Java字面量(Java直接量)和符号引用
2015-03-09 10:50
267 查看
1、Java字面量(Java直接量)
int i = 1;把整数1赋值给int型变量i,整数1就是Java字面量,同样,String s = "abc";中的abc也是字面量。
数据类型 | 直接量描述 | 举例 |
int | 整数直接量(可用二、十、八、十六进制表示) | 12 -12 +12 0b12 012 0x12 |
long | 在整数直接量(也就是int型)后面,加上字母l或L | 12l -12L |
float | 在数字(包括整数和小数)后面,加上字母f或F | 3f -3.14F 3.14e5F -3.14E-5f .5f |
double | 1.浮点数直接量 2.科学计数法直接量 3.在数字(包括整数和小数)后面加上字母d或D | 3d 3.14e-5 -.5 |
boolean | 布尔直接量true、false | true false |
char | 1.单引号内的单个字符 2.单引号内的转义字符 | ‘a’ ‘中’ ‘\n’ ‘\u0000’ |
String | 双引号内的字符序列 | “abc” “中国” |
null | 引用类型的空指向 | null |
?
错误的字面量
比int的最大值还要大1的直接量2147483648是错误的,因为超过int表示的范围,应该使用2147483648L表示。比long的最大值大1的直接量9223372036854775808L是错误的,因为超过long表示的范围,应该使用 BigInteger类来表示:BigInteger b = new BigInteger("9223372036854775808");
下面四个字面量是错误的:
一个单引号:'''
一个反斜杠:'\'
带有"引号的字符串:"abc"xyz"
带有\反斜杠的字符串:"abc\xyz"
正确的写法是转义:
'\''
'\\'
"abc\"xyz"
"abc\\xyz"
说明
整数直接量的四种表示:十进制、二进制(JDK7支持)、八进制、十六进制。八进制:以数字0开头的整数,如012,表示十进制的10;
十六进制:以数字0和字母X(或x)组合开头的整数,如0x12,表示十进制的18。
二进制:以数字0和字母B(或b)组合开头的整数,如0b11,表示十进制的3;
Java中,数字前多余的0,会自动去掉。如00.1表示0.1,0012表示八进制012。
Java中,小数可省略0.部分或.0部分,如.3表示0.3,3.表示3.0。
对于数字直接量,需要根据直接量类型以及各类型的取值范围来规范赋值,不能将高取值范围的直接量赋值给低取值范围的类型,如:
?
JDK1.7新增特性
二进制表示数字:以数字0和字母B(或b)组合开头的整数;
下划线分割符:int one_million = 1_000_000;
相关文章推荐
- java Class 加载过程 符号引用 直接引用
- java 符号引用与直接引用
- JVM中的直接引用和符号引用
- 符号引用和直接引用
- JVM中的直接引用和符号引用
- JVM的符号引用和直接引用
- java向下转型引用和直接实例化引用的区别
- JSP中几种引用java代码的符号
- Java虚拟机 - 符号引用和直接引用理解
- 个人理解 java虚拟机中的符号引用和直接引用
- JAVA中的符号引用
- JVM中的直接引用和符号引用(未读)
- java虚拟机中的符号引用和直接引用
- 个人理解 java虚拟机中的符号引用和直接引用
- JVM中的直接引用和符号引用
- JVM中符号引用与直接引用
- 个人理解 java虚拟机中的符号引用和直接引用
- JAVA class文件中的符号引用
- JAVA中MESSAGEBOX,静态类直接引用
- JVM中的直接引用和符号引用