Литералы

Литерал - это текстовое представление определенного значения. В Fore.NET доступны следующие виды литералов: Логические, Целочисленные, Вещественные, Символьные, Строковые и Null.

literal:

boolean-literal

integer-literal

real-literal

character-literal

string-literal

null-literal

Логические литералы

Имеется два литерала, представляющих логические значения: True и False.

boolean-literal:

True

False

Тип логического литерала – это Boolean.

Целочисленные литералы

Целочисленные литералы используются для представления значений следующих типов: Byte, Short, Integer, Long. Целочисленные литералы могут быть представлены в виде двух возможных форм: десятичной и шестнадцатеричной.

integer-literal:

decimal-integer-literal

hexadecimal-integer-literal

decimal-integer-literal:

decimal-digits   integer-type-suffixopt

decimal-digits:

decimal-digit

decimal-digits   decimal-digit

decimal-digit:  one of

0  1  2  3  4  5  6  7  8  9

integer-type-suffix:  one of

U  u  L  l  UL  Ul  uL  ul  LU  Lu  lU  lu

hexadecimal-integer-literal:

0x   hex-digits   integer-type-suffixopt

0X   hex-digits   integer-type-suffixopt

hex-digits:

hex-digit

hex-digits   hex-digit

hex-digit:  one of

0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F  a  b  c  d  e  f

Тип литерала определяется по следующим правилам:

Если значение литерала не может быть представлено типом ULong, то выдается ошибка компиляции.

Вещественные литералы

Вещественные литералы представляют значения следующих типов: Float, Double и Decimal.

real-literal:

decimal-digits   .   decimal-digits   exponent-partopt   real-type-suffixopt

.   decimal-digits   exponent-partopt   real-type-suffixopt

decimal-digits   exponent-part   real-type-suffixopt

decimal-digits   real-type-suffix

exponent-part:

e   signopt   decimal-digits

E   signopt   decimal-digits

sign:  one of

+  -

real-type-suffix:  one of

F  f  D  d  M  m

Если не указан суффикс типа, то тип литерала - это Double. В противном случае тип литерала определяется суффиксом: F или f для типа Float, D или d для типа Double, M или m для типа Decimal.

Символьные литералы

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

character-literal:

'   character   '

character:

single-character

unicode-escape-sequence

single-character:

Any character except ' (U+0027) and new-line-character

Тип символьного литерала – это Char.

Строковые литералы

Строковый литерал представляет собой последовательность из нуля или более символов, заключенных в двойные кавычки. Также он может включать контрольные последовательности Юникод.

string-literal:

"   string-literal-charactersopt   "

string-literal-characters:

string-literal-character

string-literal-characters   string-literal-character

string-literal-character:

single-string-literal-character

quote-escape-sequence

unicode-escape-sequence

single-string-literal-character:

Any character except " (U+0022) and new-line-character

quote-escape-sequence:

""

Тип строкового литерала – это String.

Null

null-literal:

Null

Данный литерал имеет пустой тип.

См. также:

Лексемы