Java中的数据类型(8+1)
Java的数据类型分为:数值类型和非数值类型
数值类型:整型和浮点型
整 型:int(整型) short(短整型) long(长整型) byte(字节类型)
浮点型:float(单精度浮点型) double(双精度浮点型)
非数值类型:boolean(布尔类型) char(字符型) String(字符类型)
其中在Java里前面八个是基本类型,因为String类型是以大写字母开头的,所以String类型
不是基本类型,而是常用类型,实际上它是一个类,大写字母开头的关键字在Java里一般
都是类。
整 型:int 32位 4字节 (存放整型数据)
短整型:short 16位 2字节 (存放较小的整型数据)
长整型:long 64位 8字节 (存放较大的整型数据)
ps:对于精确的超大型数值计算比如天文数据
(一般指64位以上的数据运算),一般不会
采用基本类型,而采用BigInteger或BigDecimal
类型的数据进行精确计算
字节型:byte 8位 1字节 (存放文件数据等)
单精度浮点型:float 32位 4字节 (精度为小数点前后7位)
双精度浮点型:double 64位 8字节 (16位有效数字)
布尔类型: boolean 8位 1字节 (用于表示真或假两个状态)
字符型: char 16位 2字节 (C是8位,其他语法相同)
ps:1、Java中的字符实际上是一个16位的无符号整数(小于等于65535)
2、可以保存转义字符('\n','\t','\r')
3、Unicode表示法是在值前加前缀\u,如:\u002A(*),\u4e5d(九)可以在网上查\u后面编码含义
字符串类型: String - -
基本类型间的转换:
首先按字节大小排序:byte short char int long float double
在Java中,类型转化分为自动转换和强制转换。\
自动转换:即把级别低的变量的值赋值给级别高的变量时,系统自动完成数据类型的转换,如:
flaot x = 100;
如果输出x的值,结果将是100.0。
类似的
int x = 50;
float y = x;
如果输出y的值,结果将是50.0。
强制转换:即把级别高的变量的值赋值给级别低的变量时,必须使用类型转换运算,格式如下,
(类型名)要转换的值;
例如:
int x = (int)34.89;
long y = (long)56.98F;
int z = (int)1999L;
如果输出x、y、z的值,结果将是34、56和1999。