- Java是一种强类型语言
- 常量是有数据类型的
- 变量都必须声明其数据类型
整型数据类型
整型常量
- 十进制整数,如:99, -500, 0
- 八进制整数,要求以 0 开头,如:015
- 十六进制数,要求 0x 或 0X 开头,如:0x15
整型变量
整型常量默认为int型,声明long型常量可以后加‘ l ’或‘ L ‘(建议使用大写,小写容易误 认为数字1),如:
long a = 55555555; //不出错,在Int表示的范围内(21亿内)。
long b = 55555555555;//不加l出错,已经超过int表示的范围。
浮点数据类型
浮点类型常量
十进制数形式,例如:
3.14 314.0 0.314
科学记数法形式,如
314e2 314E2 314E-2
double f = 314e2; //31410^2–>31400.0
double f2 = 314e-2; //31410^(-2)–>3.14
浮点型变量
- float类型:单精度类型,尾数可以精确到7位有效数字,在很多情况下,float类型的精度很难满足需求。
- double类型:双精度类型 精度是float类型的两倍,绝大部分应用程序都采用double类型。
注意 - 浮点常量默认为double。要变为float,需在后面增加F/f. 如: 3.14F
- 浮点数存在舍入误差,很多数字不能精确表示。如果需要进行不产生舍入误差的精确数字计算,需要使用BigDecimal类。
字符数据类型
- 单引号用来表示字符常量。例如‘A’是一个字符,它与“A”是不同的,“A”表示含有一个字符的字符串。
- char 类型用来表示在Unicode编码表中的字符。
- Unicode编码被设计用来处理各种语言的所有文字,它占2个字节,可允许有65536个字符;ASCII码占1个字节,可允许 有128个字符(最高位是0),是Unicode编码表中前128个字符。
- Java 语言中还允许使用转义字符 ‘\’ 来将其后的字符转变为其它的含义,char c2 = ‘\n’; //代表换行符
- char类型在内存中存储的是该字符的Unicode编码值,所以char类型可以当做int类型来处理
布尔数据类型
备注:布尔数据类型是一位,不是一个字节,共计8个字节
- boolean类型有两个值,true 和 false
- boolean 类型用来判断逻辑条件,一般用于程序流程控制
- 实践:
- 请不要这样写:
if ( is == true && done == false )
,只有新手才那么写。 - 对于任何程序员
if ( whether && !done )
都不难理解吧。所以去掉所有的==fasle 和 ==true。
- 请不要这样写: