Java是一种主要面向对象的编程语言,它有两种基本类型:原始数据类型和引用类型。
原始数据类型包括:
byte, short, int, long, float, double, char, boolean这些类型的定义和使用都很直观,它们是基础类型,不能被分解,不能被继承。
引用类型又称为对象类型,包括数组、类、接口等。引用类型的变量实质上是指向对象在内存中的地址,这些对象通常由new关键字动态创建。
引用类型与原始数据类型最大的不同在于:引用变量保存的是堆内存中的对象的引用地址,而不是对象本身的值。引用类型变量可以进行null值赋值,而原始数据类型无法进行null值赋值。
Student stu = new Student(); // 引用变量stu指向new出的Student对象 int num = 10; // 原始数据类型变量num赋值为10
不同类型的变量之间可以进行赋值和比较。将一个原始类型的变量赋值给一个引用类型的变量,编译器会将原始类型自动转换成对应的包装类。
int i = 10; Integer j = i; // 自动装箱,等价于 Integer j = Integer.valueOf(i); System.out.println(j); // 输出 10 int k = j; // 自动拆箱,等价于 int k = j.intValue(); System.out.println(k); // 输出 10
同时,Java中也提供了一些基本类型与对应引用类型之间的转换方法。例如,可以使用Integer.parseInt方法将字符串类型的数值转换为int类型,或者使用String.valueOf方法将基本类型变量转换为字符串类型。
总之,在Java中,原始数据类型和引用类型都是非常常用的类型,需要我们熟练掌握。