day13

## 数组

相同数据类型的有序集合

int[ ] nums;or

int nums2 [ ];

```java
int [] arrays=new int[10];
arrays[0] = 1;
```

1. 声明 int [] nums; 在栈压入一个数组nums
2. 创建 nums=new int[10]; 在堆内开辟一个空间,new的东西都在堆中
3. 赋值 num[0] = 1;

```java
public class ArrayDemo02 {
public static void main(String[] args) {
//静态初始化
int [] a={1,2,3,4};
//动态初始化,默认初始化0,string为null
int [] b=new int[10];
b[0]=1;

}
}
```

1. 数组的长度是确定的
2. 所有元素都是相同类型的元素
3. 数组元素可以使任何类型
4. 数组本身就是对象,保存在堆中

## 数组的使用

1. for循环
2. 作为方法入参
3. 作为返回值

 

```java
public class ArrayDemo03 {
public static void main(String[] args) {
int [] arrays = {1,2,3,4,5};
/*
增强型for循环
for (int array : arrays) {
System.out.print(array+" ");

}
求最大值
*/
// printmax(arrays);

int[] reverse = reverse(arrays);
printArrays(reverse);

}
//打印最大值
public static void printmax(int[] arrays){
int max=arrays[1];
for (int i = 0; i < arrays.length; i++) {
if (arrays[i]>max) {
max=arrays[i];
}
}
System.out.println("max:"+max);
}
//打印数组元素
public static void printArrays(int[] arrays){
for (int i = 0; arrays.length > i; i++) {
System.out.print(arrays[i]+" ");
}
}
//反转数组
public static int [] reverse(int[] arrays){
int[] result =new int [arrays.length];
for(int i = 0,j=arrays.length-1;i<arrays.length;i++,j--){
result[j]=arrays[i];
}

return result;
}

}
```

## 二维数组

每一个元素都是一组数据

```java
public class ArrayDemo04 {
public static void main(String[] args) {
int [][] array = new int [] []{{1,2}, {2,3}};
printArray(array);
}

public static void printArray(int [][] array){
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array[i].length; j++){
System.out.println(array[i][j]);

}

}
}
}
```

 

posted @ 2021-10-30 20:09  入星辰  阅读(34)  评论(0)    收藏  举报