1.数组定义
-
数组是相同类型数据的有序集合。
-
相同类型若干数据有序排列组合而成。
-
通过下标访问。
基本特点:
-
长度确定,一旦创建大小不可更改。
-
元素必须为相同类型。
-
元素可以为任何数据类型,包括基本类型和引用类型。
-
Java对象都存在于堆中,数组本身就是对象。
2.数组的使用
1.遍历数组
int arrays = {1,2,3,4,5};//int arrays = new int[];
for(int i = 0;i<arrays.length;i++){
System.out.println(array[i]);
}
for {int array:arrays}{
System.out.println(array);
}
3.多维数组
int [] [] array = {{1,2},{2,3},{3,4}};
数组嵌套。
4.Arrays类
-
数组工具类 Arrays类中方法都为statics修饰的静态方法,可使用类名来直接调用。不用使用对象。
import java.util.Arrays;
Arrays.sort(); //数组排序,升序
Arrays.toString(); //字符串输出
Arrays.fill(a,val:0); //数组值填充
Arrays.fill(a,fromIndex:2,toIndex:4,val:0);//第二位到第四位填充为0
5.冒泡排序
两层循环。
package List;
import java.util.Arrays;
public class Demo03 {
public static void main(String[] args) {
int[] array = {8,56,3,2342,76,12,68,32};
array = sort(array);
System.out.println(Arrays.toString(array));
}
//冒泡排序
public static int[] sort(int array[]){
int temp;
for (int i = 0; i <array.length - 1 ; i++) {
for (int j = 0; j < array.length-1-i; j++) {
if(array[j]>array[j+1]){
temp = array[j+1];
array[j+1] = array[j];
array[j] = temp;
}
}
}
return array;
}
}
6.稀疏数组
-
当一个数组中大部分元素为0,或同一个值。可以用稀疏数组来保存。
-
处理方式:
-
记录数组一共几行几列,有多少个不同值。
-
把具有不同值的行列记录在一个小规模数组中,从而缩小程序规模。
-
右侧为稀疏数组,第一行记录了行列值和不同值的个数。
后八行记录了八个不同值的位置和值。