数组
- 数组的概念:是一种容器,可以同时存放多个数据值。
- 数组的特点:(1)数组是一种引用数据类型;(2)数组中的多个数据,类型必须统一;(3)数组的长度在程序运行期间不可改变
数组的初始化
(1)动态初始化:指定长度。
格式:数据类型[ ] 数组名称 = new 数据类型[数组长度];
(2)静态初始化:指定内容。
格式: 数据类型[ ] 数组名称 = new 数据类型[ ] {元素1,元素2…};
注意:虽然静态初始化没有直接告诉长度,但是可以根据大括号里的内容推算出来长度。
省略格式: 数据类型[ ] 数组名称 = {元素1,元素2…};
数组打印
直接打印数组名称,得到的是数组对应的内存地址哈希值。
访问数组元素的格式:数组名称[索引值];(索引值从0开始,知道数组的长度-1为止)
使用动态初始化数组的时候,其中的元素将会自动拥有一个默认值。规则如下:
如果是整数类型,默认为0;
如果是浮点型,默认为0.0;
如果是字符型,默认为’\u0000’如果是布尔类型,默认为false;
如果是引用类型,默认为null。
在使用动态初始化的时候,可以对数组元素进行赋值。
注意事项:静态初始化的时候也有默认值的过程,只不过系统自动将默认值替换成了大括号里的具体数值。
数组异常
- 数组索引越界异常:ArrayIndexOutOfBoundsException
- 空指针异常:NullPointException(情形:数组没有初始化new,设置的数组为null)
数组长度
格式:数组名称.length,将会得到一个int数字,代表数组的长度。
数组遍历,求数组最值
较简单,不贴代码。
数组反转
public class ArrayReverse{
public static void main(String[] args){
int[] array = {10,20,30,40,50};
for(int min = 0,int max = array.length - 1;min < max;min++,max--){
int temp = array[0];
array[min] array[max];
array[max] = temp;
}
}
}
数组方法
- 数组可以作为方法的参数。当调用方法的时候,向方法的小括号进行传参,传递进去的其实是数组的地址值。
- 如果希望一个方法中产生的多个结果进行返回,数组可以作为方法的返回值。
格式:
public static 数据类型[ ] 方法名(…){
方法体;
数据类型[ ] array = {…};
return array;
}