Java基础入门4(数组/方法参数传递)

Java基础入门4(数组/方法参数传递)_第1张图片
continue可以用来过滤掉for循环中不想要的元素;
一、数组定义和访问
存储数据长度固定,不可更改,元素类型一致(基本和引用类型都可以);
Java基础入门4(数组/方法参数传递)_第2张图片
new出来的都是引用类型;
GC是在垃圾堆操作的,数组的赋值不是垃圾回收,是直接覆盖;
二、数组原理内存图 面试**
Java基础入门4(数组/方法参数传递)_第3张图片
Java中不能直接操作内存,C语言可以通过指针操作;JVM自动分配内存地址;arr指的是内存地址,打印结果是0x1AB;
Java基础入门4(数组/方法参数传递)_第4张图片
两个变量指向同一个数组:
Java基础入门4(数组/方法参数传递)_第5张图片
三、数组操作的常见问题
3.1 数组越界异常
在这里插入图片描述
3.2 数组空指针异常
NullPointerException 空指针异常;
JVM中的垃圾回收器会把1,2,3所占的内存,不定期的清理掉;
Java基础入门4(数组/方法参数传递)_第6张图片
在这里插入图片描述
四、数组练习
数组遍历:for
在这里插入图片描述
数组获取最大值元素:for if
定义最大值中间变量的初始值不能为0,因为可能存在负值
在这里插入图片描述
soutv:打印此格式的快捷键:System.out.println("arr = " + arr);
五、方法的参数传递
Java中只有值传递,没有地址传递/引用传递
基本数据类型作为参数:方法之间的变量是独立的;
Java基础入门4(数组/方法参数传递)_第7张图片
引用数据类型作为参数:方法之间的变量不是独立的;
Java基础入门4(数组/方法参数传递)_第8张图片
方法中定义的变量,都是局部变量,在方法中有效,存在栈内存中;
数组在堆空间中;

栈是变量还有方法运行处理的地方

数组的默认值:
byte, short, int long 类型的数组 元素默认值为 0
float, double 类型的数组 元素默认值为 0.0
char 类型的数组 元素默认值为 ‘\u0000’ 相当于空字符,什么也不显示
boolean 类型的数组 元素默认值为 false
其他 引用类型的数组 元素默认值为 null , 比如String类型的数组

你可能感兴趣的:(java)