字面量

编辑

使用字面量可在 操作 中直接指定值。

整数

编辑

使用整数字面量以十进制、八进制或十六进制表示法指定 基本类型 intlongfloatdouble 的整数值。使用以下单字母表示法来指定基本类型:lL 用于 longfF 用于 float,以及 dD 用于 double。如果未指定,则类型默认为 int。使用 0 作为前缀将整数字面量指定为八进制,使用 0x0X 作为前缀将整数字面量指定为十六进制。

语法

INTEGER: '-'? ( '0' | [1-9] [0-9]* ) [lLfFdD]?;
OCTAL:   '-'? '0' [0-7]+ [lL]?;
HEX:     '-'? '0' [xX] [0-9a-fA-F]+ [lL]?;

示例

  • 整数字面量。

    0     
    0D    
    1234L 
    -90f  
    -022  
    0xF2A 

    int 0

    double 0.0

    long 1234

    float -90.0

    int -18 八进制

    int 3882 十六进制

浮点数

编辑

使用浮点字面量指定 基本类型 floatdouble 的浮点型值。使用以下单字母表示法来指定基本类型:fF 用于 float,以及 dD 用于 double。如果未指定,则类型默认为 double

语法

DECIMAL: '-'? ( '0' | [1-9] [0-9]* ) (DOT [0-9]+)? EXPONENT? [fFdD]?;
EXPONENT: ( [eE] [+\-]? [0-9]+ );

示例

  • 浮点字面量。

    0.0      
    1E6      
    0.977777 
    -126.34  
    89.9F    

    double 0.0

    double 1000000.0 指数表示法

    double 0.977777

    double -126.34

    float 89.9

字符串

编辑

使用字符串字面量指定 String 类型 的值,可以使用单引号或双引号。使用 \" 令牌将双引号包含在双引号字符串字面量中。使用 \' 令牌将单引号包含在单引号字符串字面量中。使用 \\ 令牌将反斜杠包含在任何字符串字面量中。

语法

STRING: ( '"'  ( '\\"'  | '\\\\' | ~[\\"] )*? '"'  )
      | ( '\'' ( '\\\'' | '\\\\' | ~[\\'] )*? '\'' );

示例

  • 使用单引号的字符串字面量。

    'single-quoted string literal'
    '\'single-quoted with escaped single-quotes\' and backslash \\'
    'single-quoted with non-escaped "double-quotes"'
  • 使用双引号的字符串字面量。

    "double-quoted string literal"
    "\"double-quoted with escaped double-quotes\" and backslash: \\"
    "double-quoted with non-escaped 'single-quotes'"

字符

编辑

字符字面量不会直接指定。而是使用 强制转换运算符String 类型的值转换为 char 类型的值。