一、字面值定义
创建一个Hero对象会用到new关键字,但是给一个基本类型变量赋值却不是用new. 因为基本类型是Java语言里的一种内置的特殊数据类型,并不是某个类的对象。
给基本类型的变量赋值的方式叫做字面值,示例如下:
|
二、整数字面值
- 当以l或者L结尾的时候,一个整数字面值是long类型,否则就是int类型。 建议使用大写的L而非小写的l,因为容易和1混淆。
- byte,short,int和long的值都可以通过int类型的字面值来创建。整数的字面值可以用如下四种进制来表示:
- 十进制: 基 10, 包含从0-9的数字,平常用的就是这种
- 十六进制: 基 16, 包含从0-9的数字,和从A-F的字母。
- 八进制: 基 8, 包含从0-7的数字
- 二进制: 基 2, 包含0和1。(从 JAVA7开始就可以创建 二进制的字面值了)
|
三、浮点数字面值
- 当以f或者F结尾的时候,就表示一个float类型的浮点数,否则就是double类型(以d或者D结尾,写不写都可以)。
- 浮点数还可以用E或者e表示(科学计数法)
- e2表示10的二次方,即100
- 1.234e2 = 1.234x100
|
四、字符和字符串字面值
- 字符的字面值放在单引号中
- 字符串的字面值放在双引号中
- 需要注意的是,\表示转义,比如需要表示制表符,回车换行,双引号等就需要用 \t \r \n \" 的方式进行
|
五、练习及答案
题目:
定义如下变量,然后为每种不同类型的变量赋予合法的字面值
byte b;
short s;
int i;
long l;
float f;
double d;
char c;
String str;
比如:
|
(因为b是byte类型的,250超过了byte类型的范围)
|
官方答案:
|
个人整理答案: