|
Программирование >> Программирование с использованием ajax
Объявление переменных и присваиванием им значений Вкратце напоминаем, что переменные объявляются просто путем указания их типа и имени: int age; Далее им с помощью операции = присваиваются значения: age = 25; Важно запомнишь, что перед использованием переменные должны обязательно инициализироваться. Приведенная выше операция присваивания может применяться и в качестве операции инициализации. Существует еще и ряд других вещей, которые могут здесь делаться и которые часто можно встретить в коде С#. Первая заключается в одновременном объявлении сразу нескольких переменных одного и того же типа путем разделения их имен с помощью запятой, как показано ниже: int xSize, ySize; Здесь xSize и ySize одновременно объявляются как переменные типа int. Вторым приемом, который можно часто встретить в коде С#, является присваивание значений переменным сразу же при их объявлении, что фактически означает объединение двух строк кода: int age = 25; Оба этих приема могут применяться и вместе: int xSize = 4, ySize = 5; Здесь сразу объявляются две переменные - xSize и ySize, которым сразу же присваиваются разные значения. Обратите внимание на то, что строка int xSize, ySize = 5; подразумевает инициализацию только переменной ySize, а переменная xSize лишь объявляется и по-прежнему требует инициализации, прежде чем ее можно будет использовать. Выражения Теперь, когда мы рассказали о том, как переменные можно объявлять и инициализировать, пришла пора переходить к рассмотрению способов работы с ними. В С# для этой цели предусмотрен целый ряд операций, в число которых входит и уже встречавшаяся операция присваивания (=). За счет объединения этих операций с переменными и литеральными значениями (которые в случае использования вместе с операциями называются операндами) и создаются выражения, которые являются главными строительными блоками процесса вычисления. Доступные операции варьируются от очень простых до очень сложных, часть из которых никогда не встречается за пределами математических приложений. К числу простых относятся все основные математические операции, вроде +, позволяющей складывать два операнда вместе; а к числу сложных - операции над содержимым переменных посредством его представления в двоичном формате. Также еще существуют логические операции, предназначенные специально для работы с булевскими значениями, и операции присваивания, вроде =. В настоящей главе основное внимание уделяется только математическим операциям и операциям присваивания. Логические операции будут более подробно рассматриваться в следующей главе, которая посвящена изучению булевской логики в контексте управления исполнением программы. Операции делятся на три категории: □ унарные, выполняемые на одним операндом; а бинарные, выполняемые над двумя операндами; □ тернарные, выполняемые, соответственно, над тремя операндами. Большинство операций относится к категории бинарных операций, несколько - к категории унарных и лишь одна, называемая условной операцией (conditional operator) - к категории тернарных (эта условная операция является логической, и потому более подробно будет рассматриваться в главе 4). Давайте начнем с изучения математических операций, которые бывают как унарными, так и бинарными. Математические операции Всего существует пять простых математических операций, две из которых (+ и -) имеют как бинарную, так и унарную версию. Все они приведены в табл. 3.6 вместе с коротким примером их использования и результатом, который получается в случае их применения вместе с простыми числовыми типами (вроде целых чисел и чисел с плавающей запятой). Таблица 3.6. Простые математические операции
Операция + (в унарной версии) является немного странной, потому что никак не влияет на результат. Она не вынуждает значения быть положительными, как могло показаться: если var2 содержит значение -1, тогда +var тоже будет равняться -1. Однако она является общеизвестной операцией, и потому как таковая и была включена в данную таблицу. О наиболее полезной особенности этой операции будет рассказано чуть позже в этой главе, при рассмотрении способов перегрузки операций. В примерах применяются простые числовые типы, потому что в случае использования других простых типов результат может быть не ясен. Например, какого результата следует ожидать при складывании вместе двух булевских значений? Никакого, поскольку при попытке использовать операцию = (или любую другую математическую операцию) с переменными bool компилятор выдаст ошибку. Со складыванием переменных char дело тоже обстоит не совсем просто. Напомним, что переменные char на самом деле хранятся в виде чисел, поэтому складывание вместе двух переменных char будет приводить к получению числа (а точнее - целого (int) числа). Это является примером неявного преобразования, о котором (равно как и о явном преобразовании), будет рассказываться чуть позже в этой главе, потому что оно также имеет место и в тех случаях, когда varl, var2 и var3 содержат значения смешанных типов. В бинарной операции + действительно есть смысл, когда она применяется с переменными строкового типа. В таком случае она выглядит так, как показано в табл. 3.7. Таблица 3.7. Бинарная операция сложения
Больше ни одна из других математических операций, однако, со строками не работает. Еще двумя операциями, с которыми осталось здесь познакомится, являются операции инкремента и декремента, которые представляют собой унарные операции и могут использоваться двумя способами: либо непосредственно перед, либо сразу же после операнда. Результаты, получаемые в случае применения этих операций в простых выражениях, показаны в табл. 3.8. Таблица 3.8. Операции инкремента и декремента
Эти операции всегда приводят к изменению значения, хранящегося в их операнде: □ операция ++ всегда приводит к увеличению значения операнда на один; □ а операция - всегда приводит к уменьшению значения операнда на один. Отличия между результатами, сохраняемыми в varl, вытекают из того факта, что местоположение операции определяет то, когда она вступает в действие. В случае размещения одной из этих операций перед ее операндом, он будет обрабатываться перед выполнением любых других вычислений, а случае ее размещения после операнда, он будет обрабатываться после выполнения всех остальных вычислений в выражении.
|
© 2006 - 2025 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |