数组
静态初始化
动态初始化
{
public static void main(String[] args) {
int[] array = new int[10];// 动态初始化
int[] array1 = {1,2,3,4,5,6}; //静态初始化
for (int i = 0; i < array.length; i++) {
array[i] = i + 1;
System.out.println(array[i]);
}
}
}
二维数组
{
public static void main(String[] args) {
int[][] array = {{1, 5, 8, 9, 6}, {8, 7, 4, 5, 9}, {78, 5}, {89}, {0}};
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array[i].length; j++) {
System.out.print(array[i][j] + " ");
}
System.out.println();
}
}
// 1 5 8 9 6
// 8 7 4 5 9
// 78 5
// 89
// 0
}
Arrays 类讲解
Arrays.toString() 输出数组
Arrays.sort() 数组排序
{
public static void main(String[] args) {
int[] array = {1,5,89,6,87,52,1,0,2,3,6,5,8,9,55,66};
System.out.println(Arrays.toString(array));
Arrays.sort(array);
System.out.println(Arrays.toString(array));
}
// [1, 5, 89, 6, 87, 52, 1, 0, 2, 3, 6, 5, 8, 9, 55, 66]
// [0, 1, 1, 2, 3, 5, 5, 6, 6, 8, 9, 52, 55, 66, 87, 89]
}
稀疏数组
int[][] array1 = new int[11][11];
/* for (int i = 0; i <array1.length ; i++) {
for (int j = 0; j <array1[i].length ; j++) {
array1[i][j] = 0;
}
}*/
array1[0][2] = 1;
array1[1][3] = 2;
array1[5][9] = 98;
array1[8][6] = 36;
System.out.println("原数组");
for (int i = 0; i < array1.length; i++) {
for (int j = 0; j < array1[i].length; j++) {
System.out.print(array1[i][j] + " ");
}
System.out.println();
}
System.out.println("==============================");
int sum = 0;
for (int i = 0; i < array1.length; i++) {
for (int j = 0; j < array1[i].length; j++) {
if (array1[i][j] != 0) {
sum++;
}
}
}
System.out.println(sum);
System.out.println("稀疏数组");
int[][] a = new int[sum + 1][3];
a[0][0] = 11;
a[0][1] = 11;
a[0][2] = sum;
int count = 0;
for (int i = 0; i < array1.length; i++) {
for (int j = 0; j < array1[i].length; j++) {
if (array1[i][j] != 0) {
count++;
a[count][0] = i;
a[count][1] = j;
a[count][2] = array1[i][j];
}
}
}
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[i].length; j++) {
System.out.print(a[i][j] + " ");
}
System.out.println();
}
System.out.println("++++++++++++++");
System.out.println("还原数组" );
int[][] reduction = new int[a[0][0]][a[0][1]];
for (int i = 1; i <a.length ; i++) {
reduction[a[i][0]][a[i][1]] = a[i][2];
}
for (int i = 0; i < reduction.length; i++) {
for (int j = 0; j < reduction[i].length; j++) {
System.out.print(reduction[i][j] + " ");
}
System.out.println();
}
原数组
0 0 1 0 0 0 0 0 0 0 0
0 0 0 2 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 98 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 36 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
==============================
4
稀疏数组
11 11 4
0 2 1
1 3 2
5 9 98
8 6 36
++++++++++++++
还原数组
0 0 1 0 0 0 0 0 0 0 0
0 0 0 2 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 98 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 36 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
Process finished with exit code 0