常量就是在程序中固定不变的值,是不能改变的数据。
常量分为符号常量(Symbolic Constant)和直接量(Literal Constant)两种。
符号常量在程序运行过程中其值不可以改变,符号常量一般用大写字母。例如,定义数学常数PI:final double PI = 3.14159。
在Java中,常量包括整型常量、浮点数常量、布尔常量、字符常量等。
整形常量
整型常量是整数类型的数据,它的表现形式有四种,具体如下:
二进制:以0b或0B开头由数字0 和1 组成的数字序列,如:0B0110101,或0b1101011。
八进制:以0开头并且其后由0 ~7范围(包括0和7)内的整数组成的数字序列,如:0342。
十进制:由数字0~9范围(包括0和9)内的整数组成的数字序列。如:198。整数以十进制表示时,第一位不能是0,0本身除外。
十六进制:以0x或者0X开头并且其后由0~9、A~F(包括0和9、A和F)组成的数字序列,如0x25AF。
浮点数常量
浮点数常量就是数学中的小数,分为float单精度和double双精度两种类型。
单精度浮点数后面以f或F来结尾,如:3e2f 0f 6.666e+16f
双精度浮点数后面以D或d来结尾,如 3.6d 6.66d
Java浮点数常量默认为double型,如要声明一个常量为float型,则必须在数后面加上f或F,如:
double d=66.6 //正确的
float a=12.6 //错误的
float b=13.6f //正确的
字符常量
字符常量用于表示一个字符,一个字符常量要用一对英文半角格式的单引号('
')引起来,它可以是英文字母、数字、标点符号、以及由转义序列来表示的特殊字符。具体示例如下:
上面的示例中,'\u0000'表示一个空白字符,即在单引号之间没有任何字符。之所以能这样表示是因为,Java采用的是Unicode
字符集,Unicode字符以\u开头,空白字符在Unicode码表中对应的值为'\u0000'。
字符串常量
字符串常量用于表示一串连续的字符,使用用例如下时要用一对英文半角双引号括起来。
用例如下:
一个字符串可以包含一个字符也可以包含多个字符,也可以不包含字符,及长度为零。
注意:字符常量用“+”连接做加法运算,如:‘a’+‘b’的结果为666。
字符串常量用“+”连接做连接运算,如:“a”+“b”的结果为“ab”。
布尔常量:
布尔常量即布尔型的两个值true和false,该常量用于区分一个事物的真与假。
null常量:
null常量只有一个值null,表示对象的引用为空。