Java基础 - 数组
数组概念及创建方法
1 package com.demo6;
2
3 /*
4 * 数组:
5 * 数组是存储多个变量(元素)的东西(容器)
6 * 数组中多个变量的数据类型要一致
7 *
8 * 定义格式:
9 * A:数据类型[] 数组名; // 推荐
10 * B:数据类型 数组名[];
11 *
12 * 数组初始化:
13 * 所谓的初始化,就是为了数组开辟内存空间,并为数组中的每个元素赋予初始值
14 *
15 * 数组初始化方法:
16 * A:动态初始化 只给出长度,由系统给出初始化值
17 * B:静态初始化 给出初始化值,由系统决定长度
18 *
19 * 数组动态初始化:
20 * 数据类型[] 数组名 = new 数据类型[数组长度];
21 *
22 * 数组静态初始化:
23 * 数据类型[] 数组名 = new 数据类型[]{元素1, 元素2, 元素3}
24 * 简化格式:
25 * 数据类型[] 数组名 = {元素1, 元素2, 元素3}
26 *
27 * */
28
29 public class test1 {
30
31 public static void main(String[] args) {
32 /*
33 * 数组动态初始化
34 * */
35 // 数据类型[] 数组名 = new 数据类型[数组长度];
36 int[] arr = new int[3]; // 定义一个int类型的数组,数组名是arr,长度是3
37
38 // 给数组赋值
39 arr[0] = 100;
40 arr[1] = 200;
41 arr[2] = 300;
42
43 System.out.println(arr[0]);
44 System.out.println(arr[1]);
45 System.out.println(arr[2]);
46
47 int[] arr2 = arr;
48 arr2[0] = 500;
49 System.out.println("arr[0]:" + arr[0]);
50 System.out.println("arr2[0]:" + arr2[0]);
51
52 System.out.println("==============");
53 /*
54 * 静态初始化
55 * 数据类型[] 数组名 = {元素1, 元素2, 元素3}
56 * */
57 int[] arr3 = {1, 2, 3, 4};
58 System.out.println("arr3[0]: " + arr3[0]);
59 System.out.println("arr3[1]: " + arr3[1]);
60 System.out.println("arr3[2]: " + arr3[2]);
61 System.out.println("arr3[3]: " + arr3[3]);
62
63 }
64 }
遍历数组
1 package com.demo6;
2
3 /*
4 * 数组遍历
5 * 依次输出数组中的每一个元素
6 * */
7 public class test1 {
8
9 public static void main(String[] args) {
10
11 // 定义一个数组
12 int[] arr = {11, 22, 33 ,44, 55};
13
14 // 原始做法
15 System.out.println(arr[0]);
16 System.out.println(arr[1]);
17 System.out.println(arr[2]);
18 System.out.println(arr[3]);
19 System.out.println(arr[4]);
20
21 // 通过for循环遍历
22 // 通过 数组名.length 可以获取数组中元素的个数
23 for (int i = 0; i < arr.length; i++) {
24 System.out.println(arr[i]);
25 }
26 }
27 }
获取数组的最大值和最小值
1 package com.demo6;
2
3 /*
4 * 获取数组中的最大值和最小值
5 * */
6
7 import java.util.Random;
8
9 public class test1 {
10
11 public static void main(String[] args) {
12
13 // 先初始化一个数组
14 int[] arr = new int[100];
15 Random rn = new Random();
16
17 // 给数组中的每个元素初始化随机数
18 for (int i = 0; i < arr.length; i++) {
19 arr[i] = rn.nextInt(100);
20 }
21
22 // 找出最大值
23 System.out.println("============找出最大值:");
24 int max = arr[0];
25 for (int i = 0; i < arr.length; i++) {
26 if (arr[i] > max) {
27 max = arr[i];
28 }
29 }
30 System.out.println("找到的最大值是:" + max);
31
32 // 找出最小值
33 System.out.println("============找出最小值:");
34 int min = arr[0];
35 for (int i = 0; i < arr.length; i++) {
36 if (arr[i] < min) {
37 max = arr[i];
38 }
39 }
40 System.out.println("找到的最小值是:" + max);
41
42 }
43 }
二维数组
1 package com.demo6;
2
3 /*
4 * 二维数组:其实就是元素为一维数组的数组
5 *
6 * 定义格式:
7 * A:数据类型[][] 数组名; (推荐方式)
8 * B:数据类型 数组名[][];
9 * C:数据类型[][] 数组名[]
10 *
11 * 初始化方式:
12 * A:动态初始化
13 * 数据类型[][] 数组名 = new 数据类型[m][n];
14 * // m 表示的是二维数组中一维数组的个数
15 * // n 表示的是一维数组中元素的个数
16 *
17 * B:静态初始化
18 * 数据类型[][] 数组名 = new 数据类型[][]{{元素1, 元素2,...}, {元素1, 元素2,...}, {元素1, 元素2,...}}
19 * 简化格式:
20 * 数据类型[][] 数组名 = {{元素1, 元素2,...}, {元素1, 元素2,...}, {元素1, 元素2,...}}
21 *
22 * */
23 public class test2 {
24 public static void main(String[] args) {
25 // 定义一个二维数组
26 // 数据类型[][] 数组名 = {{元素1, 元素2,...}, {元素1, 元素2,...}, {元素1, 元素2,...}}
27 int[][] arr = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
28 System.out.println(arr[0][0]);
29
30 // 遍历数组
31 for (int i = 0; i < arr.length; i++) {
32 for (int i1 = 0; i1 < arr[i].length; i1++) {
33 System.out.println(arr[i][i1]);
34 }
35 }
36
37 }
38 }