-
Java的数据类型
-
基本数据类型:整型、浮点型、字符型、布尔型
-
复合数据类型:数组、类、接口
-
1.1. 基本数据类型
数据类型 | 关键字 | 内存占用 | 范围 |
---|---|---|---|
字节型 | byte | 1 字节 | -128 ~ 127 |
短整型 | short | 2 字节 | -32768 ~ 32767 |
整型 | int | 4 字节 | -2^{31} ~ 2^{31}-1 |
长整型 | long | 8字节 | -2^{63} ~ 2^{63}-1 |
单精度浮点型 | float | 4字节 | 有范围,一般不关注 |
双精度浮点型 | double | 8字节 | 有范围,一般不关注 |
字符型 | char | 2字节 | 0 ~ 65535 |
布尔型 | boolean | 没有明确规定 | true 和 false |
注:
-
不论是在16位系统还是32位系统,int都占用4个字节,long都占8个字节
-
整形和浮点型都是带有符号的
-
整型默认为int型,浮点型默认为double
1.2. 基本数据类型的拆装箱
因为基本数据类型的使用场景受限,Java对基本数据类型进行了封装,将其装箱成为一个复合数据类型,这样,基本数据类型就可以依靠快速拆装箱的操作转换身份,同时享有复合数据类型的特殊特性和基本数据类型的便捷性。
包装类一般是对应基本数据类型的首字母大写,但由于int 类型和char 类型较为特殊,其对应的包装类A别是Integer和Character。通过包装类的基本方法可以获取其对应的基本数据类型的阈值。去除这些,包装类还有一些转换的方法,例如parse0和valueOf0方法。
包装类的转换方法
public static void main(String[] args){
//定义String类型的变量,一个是整形的100,一个是浮点型的99.88
String intValue="100";
String doubleValue="99.88";
byte b=Byte.parseByte(intValue);//将字符串转型成一个byte类型的数据
short s=Short.parseShort(intValue);//将字符串转型成一个short类型的数据
int i=Integer.parseInt(intValue);//将字符串转型成一个int类型的数据
System.out.println("b="+b+";s="+s+";i="+i);//打印输出
float d=Float.parseFloat(doubleValue);//将字符串转型成一个float类型的数据
double f=Double.parseDouble(doubleValue);//将字符串转型成一个double类型的数据
System.out.println("f="+f+";d="+d);//打印输出
}
2. 变量
定义变量的语法格式为:
数据类型 变量名 = 初始值;
如:
int a = 99;
double d = 3.14;
char c = 'a';
int a1 = 1, a2 = 2, a3 = 3;// 在一行可以定义多个相同类型的变量
3. 字符串类型
public static void main(String[] args) {
String s1 = "hello";
String s2 = " world";
System.out.println(s1);
System.out.println(s2);
System.out.println(s1+s2); //将s1和s2进行拼接
}
包装类的转换方法
public static void main(String[] args){
int num1 = 99;
String str1 = String.valueOf(num);//将int类型的数据转型成一个字符串类型
System.out.println(str1);
String str2 = "999";
int num2 = Integer.parseInt(str);//将字符串转型成一个int类型的数据
System.out.println(num2);
}