数组用一个标识符和下标表示,下标可以区分数组中不同的元素。
如果一个数组中只有一个下标,则称为一维数组。有两个下标,则称为二维数组。一般只用到三维数组,而一维和二维数组比较常用。
一、一维数组
将若干个整数按照由小到大的顺序排列。
import java.util.*;
public class Main {
public static void main(String args[])
{
int a[]= {10,22,-52,73,42};
int b[]= {12,34,656,-34,98,-235,78,69,-24};
sort(a);
sort(b);
print(a);
print(b);
}
static void sort(int x[])
{
int i,j,k;
for(i=0;i<x.length-1;i++)
{
k=i;
for(j=i+1;j<x.length;j++)
{
if(x[j]<x[k])
k=j;
}
if(k!=i)
{
int t=x[i];
x[i]=x[k];
x[k]=t;
}
}
}
static void print(int x[])
{
for(int i=0;i<x.length;i++)
System.out.printf("%4d",x[i]);
System.out.println();
}
}
二、多维数组
编程实现两个矩阵的乘法运算。
import java.util.*;
public class Main {
public static void main(String args[])
{
int a[][]= {{-4,5,-7},
{2,-3,-4},
{3,4,5}};
int b[][]= {{1,2},
{5,6},
{-7,9}};
int result[][]=mul(a,b);
print(result);
}
static int[][] mul(int x[][],int y[][])
{
int i,j,k;
int z[][]=new int [x.length][y[0].length];
for(i=0;i<x.length;i++)
for(j=0;j<y[0].length;j++)
{
z[i][j]=0;
for(k=0;k<x[0].length;k++)
z[i][j]+=x[i][k]*y[k][j];
}
return z;
}
static void print(int x[][])
{
int i,j;
for(i=0;i<x.length;i++)
{
for(j=0;j<x[i].length;j++)
System.out.printf("%5d",x[i][j]);
System.out.println();
}
}
}
![](https://i-blog.csdnimg.cn/blog_migrate/58c252087512d1daa5bc9439d635d241.png)