字面值定义:
在Java源代码中,字面值用于表示固定的值(fixed
value)。数值型的字面值是最常见的,字符串字面值可以算是一种,当然也可以把特殊的null当做字面值。字面值大体上可以分为整型字面值、浮点字面值、字符和字符串字面值、特殊字面值。
特殊字面值:
null是一种特殊的类型(type),可以将它赋给任何引用类型变量,表示这个变量不引用任何东西。如果一个引用类型变量为null,表示这个变量不可用。
整形字面值
java中有三种表示整数的方法:八进制 十进制 十六进制
首先介绍八进制 :以0开头 ,包括 0-7的数字(不可以出现 8,9)
如 :056 错误例子: 085
十六进制表示 :以0x或0X开头,包括0-9的数字,及字母a-f,A-F (10以上 a-f来表示
可大写或者小写)
如 :0x14 0xacb OXABCFF 在这里给大家举一个特殊的例子 : 0x1abH (由于上面介绍10以上用a-f 这里的H
这样写对么?答案是对的,这里0x1abH 指的是长整形 表示方式)
由于十进制 大家常用,在此不做过多介绍.
浮点字面值:
浮点字面值简单的理解可以理解为小数。分为float字面值和double字面值,如果在小数后面加上F或者f,则表示这是个float字面值,如11.8F。如果小数后面不加F(f),如10.4。或者小数后面加上D(d),则表示这是个double字面值。另外,浮点字面值支持科学技术法表示。下面是一些例子:
double d1 = 10;
double d2 =
11.4;
double d3 =
1.23E3;
double d4 = 10D;
double d5 =
0.4D;
float f1 = 10;
float f2 =
11.1F;
float f3 =
1.23e-4F;
float f4 = 1.23E0F;
字符及字符串字面值:
Java中字符字面值用单引号括起来,如‘@’‘1’。所有的UTF-16字符集都包含在字符字面值中。不能直接输入的字符,可以使用转义字符,如‘\n’为换行字符。也可以使用八进制或者十六进制表示字符,八进制使用反斜杠加3位数字表示,例如'\141'表示字母a。十六进制使用\u加上4为十六进制的数表示,如'\u0061'表示字符a。也就是说,通过使用转义字符,可以表示键盘上的有的或者没有的所有字符。常见的转义字符序列有:
\ddd(八进制) 、 \uxxxx(十六进制Unicode字符)、\'(单引号)、\"(双引号)、\\
(反斜杠)\r(回车符) \n(换行符) \f(换页符) \t(制表符) \b(回格符)
字符串字面值则使用双引号,字符串字面值中同样可以包含字符字面值中的转义字符序列。字符串必须位于同一行或者使用+运算符,因为java没有续行转义序列。
在数值型字面值中使用下划线:
JDK7开始,可以在数值型字面值(包括整型字面值和浮点字面值)插入一个或者多个下划线。但是下划线只能用于分隔数字,不能分隔字符与字符,也不能分隔字符与数字。例如
int x = 123_456_789.在编译的时候,下划线会自动去掉。可以连续使用下划线,比如float f =
1.22___33__44.二进制或者十六进制的字面值也可以使用下划线,记住一点,下划线只能用于数字与数字之间,初次以外都是非法的。例如1._23是非法的,_123、11000_L都是非法的。
变量类型 变量名 变量值
他们的关系:
变量的声明 格式: 数据类型 变量名;
(大家看到这里并没有变量值 待我举例说明)
eg: int
score = 100;
↓ ↓ ↓ ↓
数据类型
变量名
赋值运算符
变量值
(这里赋值运算符 是将右边的数值给左边 例如 a=12;
b=a; 将a的值给了b 所以 b=12);