■Java是一种强类型语言,每个变量都必须声明其类型。
■Java的数据类型分为两大类:基本类型和引用类型(引用数据类型的大小统一为4个字节,记录的是其引用对象的地址)。
■Java中定义了3类8种基本数据类型:
①数值型——byte、short、int、long、float、double
②文本型——char
③逻辑型——boolean
1.整型变量
整型用于表示没有小数部分的数值,它允许是负数。
类型 | 占用存储空间 | 表数范围 |
Byte | 1字节 | -128~127 |
Short | 2字节 | -215~215-1 (-32678~32767) |
Int | 4字节 | -231~231-1 (-2147483648~2147483647) 约21亿 |
Long | 8字节 | -263~263-1 |
Java语言整型常数的三种表示形式:
①十进制整数
②八进制整数(以0开头)
③十六进制整数(以0x或0X开头)
Java语言的整型常数默认为int型,声明long型常量可以后缀'l'或'L',Java中没有无符号类型。
2.浮点型
类型 | 占用存储空间 | 表数范围 |
Float | 4字节 | -3.403E38~3.403E38 |
Double | 8字节 | -1.798E308~1.798E308 |
float(单精度类型,尾数精确到7位有效数字)
double(双精度类型)
Java浮点类型常量有两种表示形式:
①十进制数形式
②科学计数法形式(如:314e2或314E2)
float类型的数值有一个后缀F/f,没有后缀的浮点数值默认为double类型,double类型也可后缀加D/d。
总结:
①浮点类型数值默认为double。
②浮点数存在舍入误差,很多数字不能精确表示。若需要进行不产生舍入误差的精确计算,需要使用BigDecimal类。
③避免比较中使用浮点数。
3.字符型
①单引号用来表示字符常量。
②char类型用来表示在Unicode编码表中的字符。
③Unicode编码被设计用来处理各种语言的所有文字,它占两个字节,可允许有65536个字符;ASCII码占一个字节,可允许有128个字符,它是Unicode编码表中前128个字符。
④Unicode具有从0到65535之间的编码,它们通常用从'\u0000'到'\uffff'之间的十六进制值来表示。
⑤Java语言中还允许使用转义字符'\'来将其后的字符转变为其他含义。
转义符 | 含义 | Unicode值 |
\b | 退格(backspace) | \u0008 |
\n | 换行 | \u000a |
\r | 回车 | \u000d |
\t | 制表符(tab) | \u0009 |
\" | 双引号 | \u0022 |
\' | 单引号 | \u0027 |
\\ | 反斜杠 | \u005c |
4.布尔(boolean)类型
①boolean类型有两个值,true和false,Java中不可以0或非0的整数替代true和false(数据库中逻辑字段可使用)。
②boolean类型用来判断逻辑条件,一般用于程序流程控制。
boolean flag;
flag = ...;
if(flag)
//true分支;
else
//false分支;