一,基本概念
概念:数组是一个容器,当需要存储多个数据的时候,就需要有这么一个容器,以方便存储使用。
特点:大小固定,数组中能存储是数据必须是同一种类型的数据。
二,3种语法
- 数据类型[] 变量名 = new 数据类型[size];
/**
* 数组的创建方式一 指定的只是数组大小
*/
public static void createArrey1() {
// 创建了一个大小为三的数组容器
int[] arr = new int[3];
// 赋值
arr[0] = 6;
arr[1] = 8;
arr[2] = 4;
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);
}
- 数据类型[] 变量名 = new 数据类型[]{值,…};
/**
* 数组的创建方式二 制定的是内容,大小由内容数量决定
*/
public static void createArrey2() {
String[] arr = new String[] { "阿祖", "成龙" };
System.out.println(arr[0]);
System.out.println(arr[1]);
// 获取数组大小的方式
System.out.println("数组大小" + arr.length);
}
- 数据类型[] 变量名 = {值,…};
/**
* 数组的创建方式三 简写方法和for循环方式
*/
public static void createArrey3() {
String[] arr = { "张飞", "关羽", "刘备" };
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
System.out.println(arr.length);
}
三,自定义语法和多维语法
- 自定义语法
/**
* 定义一个数组用于储存多个商品的信息
*/
public static void createArrey4() {
Items item1 = new Items(1, "德芙巧克力", 39.9);
Items item2 = new Items(2, "巧乐兹", 3.5);
Items item3 = new Items(3, "趣多多", 6.5);
Items[] itemsArr = {item1, item2, item3};
System.out.println(itemsArr[0].getItemPrice());
}
/**
- 二维数组语法
/**
* 二维数组
*/
public static void createArrey5() {
String[][] arr5 = new String[3][4];
arr5[0][3] = "03";
arr5[1][0] = "10";
arr5[2][2] = "22";
arr5[1][3] = "13";
System.out.println(arr5[0][3] + arr5[1][0] + arr5[2][2] + arr5[1][3]);
for (int i = 0; i < arr5.length; i++) {
for (int j = 0; j < arr5[i].length; j++) {
System.out.println(arr5[i][j]);
}
}
}
- 三维数组写法和三维循环
public static void createArrey7() {
String[][][] arr4 = { { { "1", "2" }, { "3", "4" }, { "5", "6" } },
{ { "7", "8" }, { "9", "10" }, { "11", "12" } } };
System.out.println(arr4[1][2][0]);
System.out.println(arr4[1][2].length);
for (int i = 0; i < arr4.length; i++) {
for (int j = 0; j < arr4[i].length; j++) {
for (int k = 0; k < arr4[i][j].length; k++) {
System.out.println(arr4[i][j][k]);
}
}
}
}
四,要点总结
要点:
-
数组的下标起始位置是从0开始的,这是不能变的
-
更多维语法的构建中,可以采用逐渐细分的方式, 逐级明确第一到第四各有几个值,再进行划分
-
根据维度数量套for循环,循环次数为对应维的上一维的长度