目录
数组(Array)是有序的元素序列。 若将有限个类型相同的变量的集合命名,那么这个名称为数组名。 组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量/12713827)。用于区分数组 的各个元素的数字编号称为下标。数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按有序 的形式组织起来的一种形式。 这些有序排列的同类数据元素的集合称为数组。
数组是用于储存多个相同类型数据的集合。 数组是对象类型(引用类型)
一,一维数组
1,声明数组,自动初始化
[] 变量名 = new 类型[num];
声明数组,自动初始化;num为数组的个数,数组的下标是从0开始的
示例代码如下:
int[] a1 = new int[3];
System.out.println(Arrays.toString(a1));
输出结果入下:

2,声明数组,并直接赋值
int[] a3 = {10, 20, 30};
int a4[] = new int[]{1, 2, 3, 4, 5};
String[] sts = new String[]{"李四", "王五", "张三丰", "赵六", "郑强"};
实例代码如下:
int[] a3 = {10, 20, 30};
int a4[] = new int[]{1, 2, 3, 4, 5};
String[] sts = new String[]{"李四", "王五", "张三丰", "赵六", "郑强"};
System.out.println(Arrays.toString(a3));
System.out.println(Arrays.toString(a4));
System.out.println(Arrays.toString(sts));
输出结果如下:

3,遍历一维数组
示例代码入下:
int a4[] = new int[]{1, 2, 3, 4, 5};
for (int i = 0; i < a4.length; i++) {
System.out.println(a4[i]);
}
输出结果入下:

二,多维数组
1,多维数组的声明
//一维数组
int[] i = new int[3];
//二维数组
int[][] a2 = new int[2][3];
//三维 int[][][]
a3 = new int[1][2][3];
//n维数组
int[][][][][][][][][] num;
2,遍历二维数组
示例代码如下:
int[][] i2 = {{1, 2, 3}, {11, 22}, {333}};
for (int i = 0; i < i2.length; i++) {
for (int j = 0; j < i2[i].length; j++) {
System.out.printf("i2[%d][%d] = %d ", i, j, i2[i][j]);
}
}
运行结果如下:

三,数组排序
1,冒泡排序
示例代码如下:
Random rand = new Random();
int[] sort = new int[10];
for (int i = 0; i < sort.length; i++) {
sort[i] = rand.nextInt(1, 101);
}
for (int x = 0; x < sort.length - 1; x++) {
for (int y = 0; y < sort.length - 1 - x; y++) {
if (sort[y] < sort[y + 1]) {
int t = sort[y + 1];
sort[y + 1] = sort[y];
sort[y] = t;
}
}
}
System.out.println(Arrays.toString(sort));
运行结果如下:

2,洗牌问题
示例代码如下:
Random rand = new Random();
int[] sort = new int[]{1,2,3,4,5,6,7,8,9,10};
}
for (int k = 0; k < sort.length; k++) {
int o= rand.nextInt(sort.length);
int j= rand.nextInt(sort.length);
if (o==j){
--k;
continue;
}
int l=sort[j];
sort[j]=sort[o];
sort[o]=l;
}
System.out.println(Arrays.toString(sort));
输出结果如下:

3,双色球问题
利用数组,随机,生成五组 双色球 候选号红(1-32) 6位 蓝(1-16) 1位
示例代码试下:
Random rand=new Random();
for (int i = 0; i < 5; i++) {
int[] red=new int[6];
for (int x = 0; x < red.length; x++) {
int ball= rand.nextInt(1,33);
boolean b=true;
for (int n : red) {
if (ball==n){
b=false;
break;
}
}
if (b){
red[x]=ball;
}else {
--x;
}
}
int blue= rand.nextInt(1,17);
System.out.println(Arrays.toString(red)+"["+blue+"]");
}
输出结果如下:

4941



被折叠的 条评论
为什么被折叠?



