Переменные C # и (примитивные) типы данных

В этом руководстве мы узнаем о переменных, как создавать переменные в C # и о различных типах данных, которые поддерживает язык программирования C #.

Переменная - это символическое имя, присвоенное ячейке памяти. Переменные используются для хранения данных в компьютерной программе.

Как объявить переменные в C #?

Вот пример объявления переменной на C #.

 int age;

В этом примере intобъявляется переменная типа age (целое число), которая может хранить только целые значения.

Мы можем присвоить значение переменной позже в нашей программе, например:

 int age;……… age = 24;

Однако переменная также может быть инициализирована некоторым значением во время объявления. Например,

 int age = 24;

Здесь одновременно intобъявляется и инициализируется переменная age типа 24.

Поскольку это переменная, мы также можем изменить значение переменных. Например,

int age = 24; возраст = 35;

Здесь значение возраста изменено на 35 с 24.

Переменные в C # необходимо объявить, прежде чем их можно будет использовать. Это означает, что имя и тип переменной должны быть известны, прежде чем им можно будет присвоить значение. Вот почему C # называется языком со статической типизацией.

После объявления тип данных переменной не может быть изменен в пределах области видимости. Область видимости можно представить как блок кода, в котором переменная видна или доступна для использования. Если вы не поняли предыдущее утверждение, не волнуйтесь, мы узнаем об объемах в следующих главах.

А пока помните, что в C # нельзя:

int age; age = 24;……… float age;

Неявно типизированные переменные

В качестве альтернативы в C # мы можем объявить переменную, не зная ее типа, используя varключевое слово. Такие переменные называются неявно типизированными локальными переменными .

Переменные, объявленные с использованием varключевого слова, должны быть инициализированы во время объявления.

 значение var = 5;

Компилятор определяет тип переменной по значению, присвоенному переменной. В приведенном выше примере значение имеет тип int. Это эквивалентно:

значение int; значение = 5;

Вы можете узнать больше о неявно типизированных локальных переменных.

Правила именования переменных в C #

Есть определенные правила, которым мы должны следовать при именовании переменной. Правила присвоения имени переменной в C # следующие:

  1. Имя переменной может содержать только буквы (прописные и строчные), подчеркивание (_) и цифры.
  2. Имя переменной должно начинаться с буквы, подчеркивания или символа @. Например, Правила именования переменных в C #
    Имена переменных Замечания
    имя Действительный
    предмет101 Действительный
    _возраст Действителен (лучший способ именования частных переменных-членов)
    @перерыв Действителен (используется, если имя является зарезервированным ключевым словом)
    101 тема Недействительный (начинается с цифры)
    твое имя Действительный
    твое имя Недействительный (содержит пробелы)
  3. C # чувствителен к регистру. Это означает, что возраст и возраст относятся к 2 различным переменным.
  4. Имя переменной не должно быть ключевым словом C #. Например, if, for, usingне может быть имя переменной. Мы поговорим больше о ключевых словах C # в следующем руководстве.

Лучшие практики для именования переменной

  1. Выберите логичное имя переменной. Например, имя, возраст, тема имеют больше смысла, чем n, a и s.
  2. Используйте нотацию camelCase (начинается со строчной буквы) для именования локальных переменных. Например, numberOfStudents, age и т. Д.
  3. Используйте PascalCase или CamelCase (начинается с заглавной буквы) для именования общедоступных переменных-членов. Например, Имя, Цена и т. Д.
  4. Используйте начальное подчеркивание (_), за которым следует нотация camelCase для именования частных переменных-членов. Например, _bankBalance, _emailAddress и т. Д.

Вы можете узнать больше о соглашениях об именах в C # здесь.

Не беспокойтесь о публичных и частных переменных-членах. Мы узнаем о них в следующих главах.

C # примитивные типы данных

Переменные в C # в целом подразделяются на два типа: типы значений и ссылочные типы . В этом руководстве мы обсудим примитивные (простые) типы данных, которые являются подклассом типов значений.

Типы ссылок будут рассмотрены в следующих руководствах. Однако, если вы хотите узнать больше о типах переменных, посетите C # Типы и переменные (официальные документы C #).

Логическое (bool)

  • Тип данных Boolean имеет два возможных значения: trueилиfalse
  • Значение по умолчанию :false
  • Логические переменные обычно используются для проверки условий, таких как операторы if, циклы и т. Д.

Например:

 using System; namespace DataType ( class BooleanExample ( public static void Main(string() args) ( bool isValid = true; Console.WriteLine(isValid); ) ) )

Когда мы запустим программу, вывод будет:

 Правда

Подписанный интеграл

Эти типы данных содержат целочисленные значения (как положительные, так и отрицательные). Из всех доступных битов один бит используется для знака.

1. сбайт

  • Size: 8 bits
  • Range: -128 to 127.
  • Default value: 0

For example:

 using System; namespace DataType ( class SByteExample ( public static void Main(string() args) ( sbyte level = 23; Console.WriteLine(level); ) ) )

When we run the program, the output will be:

 23

Try assigning values out of range i.e. less than -128 or greater than 127 and see what happens.

2. short

  • Size: 16 bits
  • Range: -32,768 to 32,767
  • Default value: 0

For example:

 using System; namespace DataType ( class ShortExample ( public static void Main(string() args) ( short value = -1109; Console.WriteLine(value); ) ) )

When we run the program, the output will be:

 -1109

3. int

  • Size: 32 bits
  • Range: -231 to 231-1
  • Default value: 0

For example:

 using System; namespace DataType ( class IntExample ( public static void Main(string() args) ( int score = 51092; Console.WriteLine(score); ) ) )

When we run the program, the output will be:

 51092

4. long

  • Size: 64 bits
  • Range: -263 to 263-1
  • Default value: 0L (L at the end represent the value is of long type)

For example:

 using System; namespace DataType ( class LongExample ( public static void Main(string() args) ( long range = -7091821871L; Console.WriteLine(range); ) ) )

When we run the program, the output will be:

 -7091821871

Unsigned Integral

These data types only hold values equal to or greater than 0. We generally use these data types to store values when we are sure, we won't have negative values.

1. byte

  • Size: 8 bits
  • Range: 0 to 255.
  • Default value: 0

For example:

 using System; namespace DataType ( class ByteExample ( public static void Main(string() args) ( byte age = 62; Console.WriteLine(level); ) ) )

When we run the program, the output will be:

 62

2. ushort

  • Size: 16 bits
  • Range: 0 to 65,535
  • Default value: 0

For example:

 using System; namespace DataType ( class UShortExample ( public static void Main(string() args) ( ushort value = 42019; Console.WriteLine(value); ) ) )

When we run the program, the output will be:

 42019

3. uint

  • Size: 32 bits
  • Range: 0 to 232-1
  • Default value: 0

For example:

 using System; namespace DataType ( class UIntExample ( public static void Main(string() args) ( uint totalScore = 1151092; Console.WriteLine(totalScore); ) ) )

When we run the program, the output will be:

 1151092

4. ulong

  • Size: 64 bits
  • Range: 0 to 264-1
  • Default value: 0

For example:

 using System; namespace DataType ( class ULongExample ( public static void Main(string() args) ( ulong range = 17091821871L; Console.WriteLine(range); ) ) )

When we run the program, the output will be:

 17091821871

Floating Point

These data types hold floating point values i.e. numbers containing decimal values. For example, 12.36, -92.17, etc.

1. float

  • Single-precision floating point type
  • Size: 32 bits
  • Range: 1.5 × 10−45 to 3.4 × 1038
  • Default value: 0.0F (F at the end represent the value is of float type)

For example:

 using System; namespace DataType ( class FloatExample ( public static void Main(string() args) ( float number = 43.27F; Console.WriteLine(number); ) ) )

When we run the program, the output will be:

 43.27

2. double

  • Double-precision floating point type. What is the difference between single and double precision floating point?
  • Size: 64 bits
  • Range: 5.0 × 10−324 to 1.7 × 10308
  • Default value: 0.0D (D at the end represent the value is of double type)

For example:

 using System; namespace DataType ( class DoubleExample ( public static void Main(string() args) ( double value = -11092.53D; Console.WriteLine(value); ) ) )

When we run the program, the output will be:

 -11092.53

Character (char)

  • It represents a 16 bit unicode character.
  • Size: 16 bits
  • Default value: ''
  • Range: U+0000 ('u0000') to U+FFFF ('uffff')

For example:

 using System; namespace DataType ( class CharExample ( public static void Main(string() args) ( char ch1 ='u0042'; char ch2 = 'x'; Console.WriteLine(ch1); Console.WriteLine(ch2); ) ) ) 

When we run the program, the output will be:

 B x

The unicode value of 'B' is 'u0042', hence printing ch1 will print 'B'.

Decimal

  • Decimal type has more precision and a smaller range as compared to floating point types (double and float). So it is appropriate for monetary calculations.
  • Size: 128 bits
  • Default value: 0.0M (M at the end represent the value is of decimal type)
  • Range: (-7.9 x 1028 to 7.9 x 1028) / (100 to 28)

For example:

 using System; namespace DataType ( class DecimalExample ( public static void Main(string() args) ( decimal bankBalance = 53005.25M; Console.WriteLine(bankBalance); ) ) ) 

When we run the program, the output will be:

 53005.25

The suffix M or m must be added at the end otherwise the value will be treated as a double and an error will be generated.

C# Literals

Let's look at the following statement:

 int number = 41;

Here,

  • int is a data type
  • number is a variable and
  • 41 is a literal

Literals are fixed values that appear in the program. They do not require any computation. For example, 5, false, 'w' are literals that appear in a program directly without any computation.

Boolean Literals

  • true and false are the available boolean literals.
  • They are used to initialize boolean variables.

For example:

 bool isValid = true; bool isPresent = false;

Integer Literals

  • Integer literals are used to initialize variables of integer data types i.e. sbyte, short, int, long, byte, ushort, uint and ulong.
  • If an integer literal ends with L or l, it is of type long. For best practice use L (not l).
     long value1 = 4200910L; long value2 = -10928190L;
  • If an integer literal starts with a 0x, it represents hexadecimal value. Number with no prefixes are treated as decimal value. Octal and binary representation are not allowed in C#.
     int decimalValue = 25; int hexValue = 0x11c;// decimal value 284

Floating Point Literals

  • Floating point literals are used to initialize variables of float and double data types.
  • If a floating point literal ends with a suffix f or F, it is of type float. Similarly, if it ends with d or D, it is of type double. If neither of the suffix is present, it is of type double by default.
  • These literals contains e or E when expressed in scientific notation.
     double number = 24.67;// double by default float value = -12.29F; double scientificNotation = 6.21e2;// equivalent to 6.21 x 102 i.e. 621

Character and String Literals

  • Character literals are used to initialize variables of char data types.
  • Character literals are enclosed in single quotes. For example, 'x', 'p', etc.
  • They can be represented as character, hexadecimal escape sequence, unicode representation or integral values casted to char.
     char ch1 = 'R'; // символ char ch2 = ' x0072'; // шестнадцатеричный char ch3 = ' u0059'; // unicode char ch4 = (char) 107; // приведен из целого числа
  • Строковые литералы - это набор символьных литералов.
  • Они заключены в двойные кавычки. Например, «Привет», «Простое программирование» и т. Д.
    строка firstName = "Ричард"; строка lastName = "Фейнман";
  • C # также поддерживает символы escape-последовательности, такие как:
    символ Смысл
    \' Одиночная цитата
    " Двойная кавычка
    \ Обратная косая черта
    Новая линия
    Возврат каретки
    Горизонтальная вкладка
    a Предупреждение
     Backspace

Интересные статьи...