数组的使用
数组的四个基本特点:
1.长度是确定的,一旦确定,长度不能够改变;
2.数组中的元素必须是相同类型,不能出现定义数组类型的其他类型;
3.定义数组可以是任何数据类型,包括引用类型和基本类型;
4.数组变量属于引用类型,可将数组看成对象,数组中的每个元素相当于该对象的成员变量。
数组本身就是对象,Java中对象是在堆当中的,所以数组无论保存原始类型还是其他对象类型,数组依然是存放在堆当中的。
问题一:遍历数组中的各个元素
//遍历数组中的各个元素
public static void main(String[] args) {
int[] num = {1,2,5,9,8,4};//创建一个数组对象
for (int i = 0; i < num.length; i++) {
System.out.println(num[i]);
}
}
问题二:计算数组中的总和
代码:
int[] num = {1,2,5,9,8,4};//创建一个数组对象
int sum = 0;
for (int i = 0; i < num.length; i++) {
sum = sum + num[i];
}
System.out.println(sum);
问题三:将数组中的最大值进行输出
代码:
//查找数组中的最大元素
int[] num = {1,2,5,9,8,4,49};//创建一个数组对象
int max = num[0];//初始化一个值,任意一个值都可以
for (int i = 0; i < num.length; i++) {//遍历每一个数组元素
if (num[i] > max) {//数组中的元素进行比较,将最大值赋值给到max
max = num[i];
}
}
System.out.println(max);//输出最大值
数组的进阶使用
问题:使用for-each循环遍历数组
代码:
//数组的遍历
int[] array = {1,5,0,0,7};
for (int a:array){//将数组的元素给到定义的a
System.out.println(a);//取不到值的下标
}
该方法不需要直接遍历数组里面的每一个元素,不用获取数组下标!
问题:使用方法打印数组元素
代码:
//使用方法打印数组中的每一个元素
public static void main(String[] args) {
int[] arrays = {0,0,7,4,5};//定义数组元素
printArray(arrays);//打印数组元素
}
public static void printArray(int[] arrays){//定义一个打印数组元素的方法
for (int i = 0; i < arrays.length; i++) {//遍历数组中的元素
System.out.print(arrays[i]+"\t");//输出遍历后的数组元素
}
数组作为方法入参:
反转,将数组中的元素反转,如下图:
代码:
public static void main(String[] args) {
int[] arrays = {0,0,7,4,5};//定义数组元素
int[] reverse = reverse(arrays);
printArray(reverse);//打印数组元素(反转)
}
//定义反转数组元素方法,就是将数组元素倒过来(并不是将数组中的元素排序)---数组作为返回值
public static int[] reverse(int[] arrays){
int[] con = new int[arrays.length];
//反转操作
for (int i = 0,j=con.length-1; i < arrays.length; i++,j--) {
con[j] = arrays[i];
}
return con;
}
//定义打印数组方法----数组作为方法入参
public static void printArray(int[] arrays){//定义一个打印数组元素的方法
for (int i = 0; i < arrays.length; i++) {//遍历数组中的元素
System.out.print(arrays[i]+"\t");//输出遍历后的数组元素
}
}
}