多维数组和arrays类详解
多维数组
-
多维数组可以看成数组的数组,比如二维数组就是一个特殊的一维数组,其每一个元素都是一个一维数组。
-
二维数组:
int [][]a=new int [3][4];
这就可以看成一个三行四列的数组。
-
二维数组的图片解释:
举例:
int [][]a={{1,2},{2,3},{3,4}};
for(int i=0;i<3;i++)
{
for(int j=0;j<2;j++)
{
System.out.println(a[i][j]);
}
}
这会输出每个元素。
但是如果只输出a[0],不会输出1,2,而是一串代码
这是因为数组本质是对象,a[0]是一个对象,不是代表两个值。
二维数组比较常用。其他也会用。
arrays类详解
-
数组的工具类java.util.Arrays
-
由于数组对象本身并没有什么方法可以供我们调用,但是API中提供了一个工具类Arrays供我们使用,从而对数据进行一些基本操作。
-
Arrays类中的方法都是static修饰的静态方法,在使用的时候可以直接使用类名来调用,而不用(不是不能)使用对象来调用。
-
具有以下常用功能:
-
给数组赋值:通过fill方法。、
-
对数组排序:通过sort方法,按升序。
-
比较数组:equals方法,比较数组元素是否相等。
-
查找数组元素:通过binarySearch方法能对排序好的数组进行二分查找法操作。
-
Arrays.toString()打印数组
-
八大排序
这里只讲冒泡排序
public static void sort(int []a){
int t;
//外层循环,判断走多少次。
for (int i=0;i<a.length-1;i++){
//内层循环,比较相邻两个数的大小,如果前一个比后一个大,就交换位置。利用变量t。
for(int j=0;j<a.length-1-i;j++){
if(a[j]>a[j+1]){
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
其他排序:(47条消息) 八大排序算法详解(java版)_华达州的博客-CSDN博客_java八大排序
article_score_rank,157v4control&utm_term=java八大排序算法&spm=1018.2226.3001.4187)