■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类型用来判断逻辑条件,一般用于程序流程控制。
booleanflag;
flag=...;if(flag)//true分支;
else
//false分支;