Упражнение. Печать литеральных значений

Завершено

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

Что такое литеральное значение?

Литеральное значение — это константное значение, которое никогда не изменяется. Ранее в выходной консоли отображалась литеральная строка. Другими словами, вы буквально хотели, чтобы строка буквенно-цифровых символов H, e, , ollи т. д. отображалась в выходной консоли.

Используйте тип данных строки всякий раз, когда у вас есть буквенно-цифровые слова, фразы или данные для презентации, а не вычисления. Какие другие типы литеральных данных можно распечатать для вывода?

Упражнение. Печать различных типов литеральных данных

В C# предусмотрено множество различных типов данных. Тем не менее для начала работы вам достаточно знать всего пять-шесть основных типов данных, которые применяются в большинстве сценариев. Давайте отобразим литеральный экземпляр типа данных для вывода.

Примечание.

При работе в окне кода вы могли заметить, что некоторые элементы синтаксиса, такие как ключевые слова, операторы, типы данных и т. д., выделяются цветом. Мы рекомендуем вам запомнить используемые цветовые сочетания. Это позволит вам быстрее замечать синтаксические ошибки во время ввода символов и лучше понимать код.

Использование символьных литерала

Если вы хотите только один буквенно-цифровой символ, напечатанный на экране, можно создать литерал char, окружив один буквенно-цифровой символ в одинарных кавычках. Термин char является коротким для символа. В C#этот тип данных официально называется char, но часто называется символом.

  1. Добавьте следующую строку кода в редакторе:

    Console.WriteLine('b');
    
  2. Просмотрите введенный код.

    Обратите внимание, что буква b окружена одними кавычками 'b'. Одинарные кавычки создают символьный литерал. Помните, что при использовании двойных кавычек создается string тип данных.

  3. Нажмите зеленую кнопку "Выполнить", чтобы запустить код. Вы увидите следующий результат в окне вывода:

    b
    

Если ввести следующий код:

Console.WriteLine('Hello World!');

Вы получите следующую ошибку:

(1,19): error CS1012: Too many characters in character literal

Обратите внимание на одинарные кавычки, окружающие Hello World!. При использовании отдельных кавычек компилятор C# ожидает один символ. Однако в этом случае использовался синтаксис литерала символов, но вместо этого были предоставлены 12 символов!

string Как и тип данных, используется всякий раз, когда для презентации используется char один буквенно-цифровой символ (а не вычисление).

Использование целых литералы

Если вы хотите отобразить числовое значение целого числа (без дробей) в выходной консоли, можно использовать литерал int. Термин int является коротким для целочисленного числа, которое можно распознать из изучения математики. В C#этот тип данных официально называется int, но часто называется "целочисленным". Литерал int не требует других операторов, таких как string или char.

  1. Добавьте следующую строку кода в редакторе:

    Console.WriteLine(123);
    
  2. Нажмите зеленую кнопку "Выполнить", чтобы запустить код. Вы увидите следующий результат в выходной консоли:

    123
    

Использование литерала с плавающей запятой

Число с плавающей запятой — это число, содержащее десятичное значение, например 3.14159. C# поддерживает три типа данных для представления десятичных чисел: float, doubleи decimal. Каждый тип поддерживает различные степени точности.

Float Type    Precision
----------------------------
float         ~6-9 digits
double        ~15-17 digits
decimal        28-29 digits

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

  1. Добавьте следующую строку кода в редакторе:

    Console.WriteLine(0.25F);
    

    Чтобы создать float литерал, добавьте букву F после числа. В этом контексте буква F называется литеральным суффиксом. Литеральный суффикс сообщает компилятору, с которым вы хотите работать со значением float типа. Нижний регистр или верхний регистр fF можно использовать как суффикс литерала для суффикса float.

  2. Нажмите зеленую кнопку "Выполнить", чтобы запустить код. Вы увидите следующий результат в выходной консоли:

    0.25
    

    Обратите внимание, что float тип данных является наименее точным, поэтому рекомендуется использовать этот тип данных для фиксированных дробных значений, чтобы избежать непредвиденных ошибок вычислений.

  3. Добавьте следующую строку кода в редакторе:

    Console.WriteLine(2.625);
    

    Чтобы создать double литерал, просто введите десятичное число. Компилятор по умолчанию использует double литерал при вводе десятичного числа без суффикса литерала.

  4. Нажмите зеленую кнопку "Выполнить", чтобы запустить код. Вы увидите следующий результат в окне вывода:

    2.625
    
  5. Добавьте следующую строку кода в редакторе:

    Console.WriteLine(12.39816m);
    

    Чтобы создать его, добавьте после числа букву m. В этом контексте буква m называется литеральным суффиксом. Литеральный суффикс сообщает компилятору, с которым вы хотите работать со значением decimal типа. Нижний регистр или верхний регистр mM можно использовать как суффикс литерала для суффикса decimal.

  6. Нажмите зеленую кнопку "Выполнить", чтобы запустить код. Вы увидите следующий результат в выходной консоли:

    12.39816
    

Использование логических литералы

Если вы хотите распечатать значение, представляющее одно true или, falseможно использовать логический литерал.

Срок bool является коротким для boolean. В C#они официально называются "bool", но часто разработчики используют термин "Boolean".

  1. Добавьте следующие строки кода в редакторе:

    Console.WriteLine(true);
    Console.WriteLine(false);
    
  2. Нажмите зеленую кнопку "Выполнить", чтобы запустить код. Вы увидите следующий результат в выходной консоли:

    True
    False
    

Литералы bool представляют идею истины и ложности. При начале добавления логики принятия решений в приложения вы будете использовать bool значения. Вы вычисляете выражения, чтобы узнать, является ли выражение истинным или ложным.

Почему типам данных уделяется такое внимание?

Типы данных играют ключевую роль в языке C#. На самом деле акцент на типах данных является одним из ключевых отличительных признаков C# по сравнению с другими языками, такими как JavaScript. Создатели языка C# уверены, что принудительное применение типов данных позволит разработчикам программного обеспечения избежать распространенных ошибок. По мере дальнейшего знакомства с языком C# вы узнаете больше о концепции применения типов данных.

Типы данных определяют возможности

Ранее вы видели, что strings и chars используются для "презентации, а не вычисления". Если вы хотите выполнить математическую операцию с числовыми значениями, вам потребуется тип int или decimal. Если у вас есть данные, используемые для обработки презентации или текста, следует использовать string или char тип данных.

Предположим, что необходимо собирать данные от пользователя, например номер телефона или почтовый индекс. В зависимости от страны или региона, в котором вы живете, эти данные могут состоять из числовых символов. Тем не менее, поскольку вам вряд ли потребуется выполнять математические операции с номерами телефонов или почтовыми индексами, для работы с ними рекомендуется использовать тип данных string.

То же можно сказать и о типе bool. Если в вашем приложении требуется работать со словами "true" и "false", следует использовать тип string. Однако если значения true или false будут использоваться в вычислениях, то необходимо выбрать тип bool.

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

Console.WriteLine("123");
Console.WriteLine(123);

Console.WriteLine("true");
Console.WriteLine(true);

Однако это только отображаемые выходные данные, которые, как представляется, похожи. Операции, которые вы можете выполнять со значениями типа int или bool, отличаются от того, что можно делать с их эквивалентами типа string.

Кратко

Основной вывод заключается в том, что существует множество типов данных, но вы будете сосредоточиться только на нескольких на данный момент:

  • string используется для вывода слов, фраз и любых других буквенно-цифровых данных, но не для выполнения вычислений с ними;
  • char представляет отдельную букву или цифру;
  • int представляет целое число;
  • decimal для числа с дробным компонентом
  • booltrue/false значение