前言
回想起刚开始了解数组的时候,还是感觉那么神奇,对课本前的666佩服不已。 当然,必须结合实际场景才能体会到阵法之美。 我们这样说吧,如果你想存储整个类的名字你会怎么做? 如果您从未使用过数组,我们肯定会想要这样做:
String name1 = "小A";
String name2 = "小B";
//...
String nameN = "小N";
然而,事实绝对不是这样的! 如果班上有50个人,你这样做就会爆炸,哈哈哈哈。 创造源于需求,让我们一起走进数组的世界吧。
数组特性 数组定义
定义:数组是相同数据类型的数据的集合。 语法:数据类型[]数组名; 例如:
int[] iarr ;//仅仅是定义/声明 一个整型数组。
数组初始化
如何初始化数组?
首先,我们必须记住数组是对象类型。 因此,需要使用new运算符来初始化数组。 最后,明确指定数组的初始长度。 而且,长度一旦确定,就不能改变。
喜欢:
int[] iarr = new int[100];
String[] names = new String[100];
//数组初始化后,它的每个元素都是默认值,其中:
byte,short,int,long =>0
double,float => 0.0
boolean => false
char => '\u0000'
对象类型 => null
数组操作迭代数组
如何迭代数组?
1.普通for循环
//Code:
int[] iarr = new int[10];
for(int i = 0;i
2.增强for循环
语法:
for(数据类型 e: 数组名字){
//...
}
//Code:
int[] iarr = new int[10];
for(int e: iarr){
System.out.println(e);
}
元素分配
如何给数组元素赋值?
A.一一赋值
//Code
String[] name = new String[3];
name[0] = "jack";
name[1] = "rose";
name[3] = "john";
B、初始化时直接赋值。
//Code
String[] names = new String[]{
"jack","rose","john"
};
或:
String[] names = {"jack","rose","john"};
或:
String[] names;
names = {"jack","rose","john"};//error
names = new String[]{"jack","rose","john"};//ok
C. 使用循环给元素赋值。 当元素值是“常规”时使用。 喜欢:
int[] arr = new int[10];//想要在此数组中存放1~10
for(int i=1;i<=10;i++){
arr[i]=i;
}
数组操作指令
数组是一种基本数据结构[data]。 当有数据结构时,我们就会想到算法。 它们相辅相成,最终的目标都是数据访问的效率。 对数据的操作本质上可以分为:添加、删除、搜索和修改。
二维数组
二维数组是指数组中的元素或一维数组。
多维数组是元素数组。
Java 语言支持多维数组。
二维数组的定义:数据类型数组名=新数据类型行; 其中,初始化二维数组时必须指定rows。 并且 cols 可以省略。
如果省略cols,则表示只初始化二维本身,不初始化二维数组中的元素。
喜欢:
int[][] arr = new int[3][];
//初始化了二维数组,但是它的元素[一维的]并没有初始化
因此,在初始化一个二维数的时候,如果指定了cols,那么这个二维数组就被称为是正则的。 喜欢:
int[][] arr = new int[n][m]; //
如果不指定cols,则可以实现不规则的二维组。
如:
int[][] brr = new int[n][]; //只初始化了二维
进一步去初始化它的每一个元素[一维]
brr[0] = new int[1];
brr[1] = new int[2];
brr[2] = new int[3];
...
brr[n-1] = new int[n];
int[][] crr = new int[][]{
{1,2},
{3,4},
};
结论
哈哈哈哈,每天进步一点点!