常量
- 字符串常量:" "(里面可以没有内容)
- 整数常量
- 浮点数常量
- 字符常量:’’(注意单引号里面必须有且仅有一个字符,也可以是空格;不能有多个字符)
- 布尔常量:true或false
- 空常量:null
数据类型
基本数据类型(四类八种)
整数:byte,short,int,long,浮点数:float,double,字符:char,布尔:boolean;其占用内存分别为1,2,4,8,4,8,2,1个字节。
引用数据类型
字符串,数组,类,接口…
注意事项:
- 浮点型可能只是一个近似值,并非精确的值;
- 整数默认类型是int,如果要用long要在数字后面加一个L,例如:long a = 10000L;浮点数默认类型是double,如果要用float,加F,跟上面情况相同。
变量
- 变量:程序运行期间,内容可以发生变化的量。
- 创建一个变量的格式:数据类型 变量名称(小驼峰)。
-
注意事项
-
- 对于float和long,F和L不要丢掉;
-
- 使用byte或者short类型的变量,赋值不要超过其范围;
-
- 没有进行赋值的变量,不能直接使用。
类型转换
自动类型转换
数据范围从小到大。例:long num = 100;(把100常量赋值给num变量)这里100后面不用加L,因为int类型的数据范围比long小。
强制类型转换
数据小的类型 数据小的变量名 = (数据小的类型)数据大的数据。例:int num = (int)100L;
注意事项
- 强制类型转换可能会发生进度损失或者数据溢出。
- byte,short,char三种类型都可以发生数学运算,如加法“+”。(一个char类型进行了数学运算,那么字符就会按照一定规则翻译成为一个数字)
- byte,short,char三种类型在发生数学运算的时候,都会首先被提升为int类型,然后再计算。例:
byte num1 = 4;
byte num2 = 5;
byte result = num1 +num2;
/*
上面这么写就会发生错误。
因为byte类型进行计算是会被提升为int,即右边是int类型,左边是byte类型。
解决办法:
1.int result = num1 +num2;
2.byte result = byte (num1 +num2);
*/
4.布尔类型不能发生强制类型转换。
ACSII码
‘0’ ——>48; ‘A’ ——>65; ‘a’ ——>97
Unicode码表
更加广泛