一、数组的定义

数组:一组具有相同数据类型的集合(容器)

1、数组声明格式: 数据类型 [] 数组名 = new 数据类型[长度];

  • 数组长度一旦确定无法更改。
  • 数组里的数据必须是相同类型或自动向上转型后兼容的类型。

2、数组初始化

  • 静态初始化
int [] i= {1,2,3,4,5};
  • 动态初始化
String[] str = new String[3];
Str[0]=”张三”;
Str[1]=”李四”;
Str[2]=”王五”;

二、遍历一维数组

思想:

  • 将一维数组中所有的元素挨个拿到

1、使用for循环

//遍历一维数组
int[] arr = new int[3];//动态创建:3个元素
arr[0] = 1;//给第1个元素(索引为0),赋值1
arr[1] = 2;//给第2个元素(索引为1),赋值2
arr[2] = 3;//给第3个元素(索引为2),赋值3
for (int i = 0; i < arr.length; i++) {
	//遍历arr[i],arr中的元素
    System.out.print(arr[i]+"\t");
}

运行结果图:
在这里插入图片描述
2、增强for循环foreach

//遍历一维数组
int [] i= {1,2,3};//静态创建
for (int i : arr) {
    System.out.print(i+"\t");
}

运行结果图:
在这里插入图片描述

三、遍历二维数组

1、格式:数据类型[][] 数组名=new 数据类型[行][列];

  • int[][] i =new int[一维数组长度][二维数组长度];

2、数组初始化

  • 静态初始化
int[][] i = {{1,2,3},{4,5,6}};
  • 动态初始化
int[][] i = new int[2][3];
i[0][0]=1;
i[0][1]=2;
i[0][2]=3;
i[1][0]=4;
i[1][1]=5;
i[1][2]=6;

思想:

  1. 先将二维数组中所有的元素拿到
  2. 再将二维数组中每个元素进行遍历,相当于就是在遍历一个一维数组

1、使用双重for循环

//遍历二维数组
int[][] arr = new int[2][3];//动态创建:2个元素(外围数组),每一个元素中各有3个元素(内围数组)
arr[0] = new int[]{1,2,3};//给第1个元素(外围数组),赋值1,2,3
arr[1][0] = 4;//给第2个元素中的第1个元素赋值4
arr[1][1] = 5;//给第2个元素中的第2个元素赋值5
arr[1][2] = 6;//给第2个元素中的第3个元素值6
for(int i = 0;i < arr.length;i++){
  //System.out.println(arr[i]);//arr中元素:2个数组的地址
  //遍历arr[0],arr中元素第一个数组
  for(int j = 0;j < arr[i].length;j++){
      System.out.print(arr[i][j] + "\t");
  }
}

运行结果图:

在这里插入图片描述
2、增强for循环foreach

//遍历二维数组
int[][] arr = {{5,6},{12,13,42,23},{5,9,1}};//静态创建
for (int[] is : arr) {
    for (int i : is) {
        System.out.print(i + "\t");
    }
}

运行结果图:
在这里插入图片描述

四、总结

遍历数组:

  1. for循环
  • 通常遍历数组都是使用for循环来实现。
  • 遍历一维数组很简单,遍历二维数组需要使用双层for循环,通过数组的length属性可获得数组的长度。
  1. 增强的for循环(foreach)
  • foreach循环,这种循环遍历数组和集合更加简洁。
  • 使用foreach循环遍历数组时,无须获得数组和集合长度,无须根据索引来访问数组元素,foreach循环自动遍历数组和集合的每一个元素。
  • 注意:
    使用foreach循环迭代数组元素时,并不能改变数组元素的值,因此不要对foreach的循环变量赋值。
  • 例如:
    for(数据类型 变量:数组(集合)){
    输出(变量);
    }
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐