数组(掌握)
1、概念(掌握)
数组是存储多个同一类型数据元素的容器(container)
2、好处(理解)
数组中的元素会被自动从0开始编号,方便我们获取
3、格式(掌握)
A int[] arr =new int[2]; //念法:int类型的数组arr
B int arr[] = new int[2]; //念法:int 类型的arr数组,不推荐这么写,他和第一种格式其实一样的
C int[] arr = new int[]{1,2,3,7}; //大括号内可以没有任何东西
D int[] arr = {3,4,65,4}; //大括号内可以没有任何东西
推荐使用A D ,C存在的意义:作为实际参数传递
获取数组的长度:变量名.length;
4、数组操作(掌握)
1、数组遍历
int[] arr = {1,3,5,6,3,5,2};for(int i=0; i<arr.length; i++){ int element = arr[i]; \\element:元素 System.out.println(element);} 2、获取数组最值
/* 方式一:临时变量为元素值 思路: 1,获取最值需要进行比较。每一次比较都会有一个较大的值。因为该值不确定。 通过一个变量进行临储。 2,让数组中的每一个元素都和这个变量中的值进行比较。 如果大于了变量中的值,就用该该变量记录较大值。 3,当所有的元素都比较完成,那么该变量中存储的就是数组中的最大值了。 */ public static int getMax(int[] arr) { int max = arr[0]; for(int x=1; x<arr.length; x++) { if(arr[x]>max) max = arr[x]; } return max; } /* 方式二:临时变量为角标 初始化为数组中任意一个角标。 */ public static int getMax_2(int[] arr) { int max = 0; for(int x=1; x<arr.length; x++) { if(arr[x]>arr[max]) max = x; } return arr[max]; }
3、数组查找:给定一个值,查找该值在数组中对应的索引
int[] arr = {1,3,5,6};//查找5所定义应的角标int index = getIndex(arr, 5);/**查找元素所对应的角标*/public static int getIndex(int[] arrays, int element){ for(int i=0; i<arrays.length; i++){ if(arrays[i] == element){ return i; } }}
5、常见问题(掌握)
A 数组越界异常:
ArrayIndexOutOfBoundsException
你访问了不存在的索引。
B 空指针异常:
NullPointerException
一个实例(对象)已经不存在了,你还去访问它的内容
|