黑马程序员技术交流社区
标题:
java基础数组部分值得学习
[打印本页]
作者:
鬼魅_vYpyK
时间:
2015-12-4 20:17
标题:
java基础数组部分值得学习
数组
什么是数组?
数组就是个容器
数组的特点?
数组初始化的时候,长度就已经固定了,不可以再改变
数组既可以存储基本数据类型也可以存储引用数据类型(以后学)
数组里面所有的元素的数据类型一致
数组的格式?
格式一:元素的数据类型[] 数组名字 = new 元素的数据类型[元素的个数];
变形:元素的数据类型 数组的名字[] = new 元素的数据类型[元素的个数];
格式二:元素的数据类型[] 数组的名字 = new 元素的数据类型[]{元素1,元素2,元素3,... ...};
注:第二个中括号,里面不能写任何东西
格式三:元素的数据类型[] 数组的名字 = {元素1,元素2,元素3,... ...};
注:
我们直接输出数组的名字,打印出来的内容是数组的地址值
我们数组数组的名字[索引],输出来的是数组中的元素
char[] chs = new char[5];
System.out.println(chs);
System.out.println(chs[0]);
我们在使用数组的时候经常会遇见的异常:
数组索引越界异常 ArrayIndexOutOfBoundsException
int[] arr = new int[5];
System.out.println(arr[0]);//0
System.out.println(arr[10]);//ArrayIndexOutOfBoundsException
空指针异常 NullPointerException
int[] arr = new int[5];
arr = null;
System.out.println(arr[0]);//NullPointerException
数组的常见操作:
遍历:
int[] arr = new int[5];
for(int i = 0; i < arr.length; i++) {//arr.length是可以获取到数组中元素的个数的
System.out.println(arr[i]);//数组的索引值是从0开始,依次为0,1,2,3.....
}
获取最值:
方法一:
int[] arr = {1,4,3,2,6,5};
int max = 0;
for(int i = 1; i < arr.length; i++) {
if(arr[max] < arr[i]) {
max = i;
}
}
方法二:
int[] arr = {1,4,3,2,6,5};
int max = arr[0];
for(int i = 1; i < arr.length; i++) {
if(max < arr[i]) {
max = arr[i];
}
}
反转:
方式一:
int[] arr = {1,3,2,5,4};
for(int i = 0; i < arr.length / 2; i++) {
int temp = arr[i];
arr[i] = arr[arr.length - 1 - i];
arr[arr.length - 1 - i] = temp;
}
方式二:
int[] arr = {1,3,2,5,4};
for(int i = 0, j = arr.length - 1; i < arr.length / 2; i++, j--) {
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
查表法:
首先,我们要用数组来制作一张表,表里的内容我们自己定义,我们只需要传数组的索引值,就能查找表里索引对应的内容。
基本查找:
int[] arr = {1,2,3,4,5};
for(int i = 0; i < arr.length; i++) {
if(arr[i] == 4) {
System.out.println(i);
}
}
作者:
袁有福123
时间:
2015-12-4 21:54
总结的很好 赞
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2