基本数据类型
基本数据类型,也称内置类型,是可以在栈直接分配内存的
1)数值型:整数类型:byte short int l ong
浮点类型:float double
2) 字符型:char (String 不属于基本数据类型)
3)布尔型:boolean
引用数据类型
引用数据类型包括: 类 接口 数组
1) Stringl类型继承自Object类,所以它是一个引用数据类型
2) 我们在java中书写的类中的属性同样也都是引用数据类型
案例
public static void main(String[] args) {
int a = 0;
change(a);
System.err.println(a); //0
int[] b = {1,2,3,4,5};
change(b);
System.err.println(b[2]); //20
}
public static void change (int[] c){
c[2] = 20;
}
public static void change(int x){
x = 20;
}
在经过两个方法的调用之后,基本数据类型的值没有发生变化,而引用数据类型发生了变化
传入方法的值是基本数据类型的时候,是a的值将值赋给了x,方法调用后将x的值改为了20,a的值没有发生任何的改变
传入的是数组的时候,是将数组b储存在堆内的地址给了c数组,只执行方法的时候更改的是数组b指向的地址,再对b进行输出的时候值就发生了改变