数组的定义
datatype [] name = new datatype[length] //动态声明 datatype [] name = new datatype[1,2,3] //静态声明
1、数组可以在定义的同时为数组分配长度,同时也能直接为数组赋值
2、只定义数组长度的数组我们称为动态初始化,这种数组需要在后面为数组赋值,好处是能随时更改数组内部的值。
3、在声明数组的同时为数组赋值,我们把这样的数组称为静态数组,后期不可以对其中的内容进行更改,好处是保证数据不会被修改
注意:
1、数组的长度一旦被确定就不能被更改
2、数组中的所有元素的数据类型必须相同
3、数组中的元素可以是任意类型,包括所有基本类型和引用
4、数组变量属于引用变量,需要使用new运算符,数组中的元素相当于成员变量,数组对象本身就在堆中
数组做方法参数
1、方法的返回值类型可以是数组,数组也可以作为方法的参数
public static void main(String[] args) { int[] arrays = {1,2,3} } public static int[] reArrays(int[] reArrays){ //传入数组 int[] re = new int[reArrays.length]; int j = 0; for(int i = 0; i < reArrays.length; i++){ re[reArrays.length-1-j]=reArrays[i]; //交换数组中的值 j++; } return re; } public static void printArrays(int[] num){ //打印数组 for (int i = 0; i < num.length; i++) { System.out.print(num[i]+" "); } }
冒泡排序
for(int i = 0; i<arr1.length-1;i++){ for(int j = 0; j<arr.length.-1-i; j++){ if(arr[j]>arr[j+1]){ temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } }
工具类
1、Arrays.sort(arrays)
将数组按升序排序输出
2、Arrays.fill( arrays)
给数组赋值
Arrays.fill(arr,0); //使用Arrays.fill()方法填充数组,逗号后的值将会全部填充进数组 Arrays.fill(arr,2,4,9); //使用Arrays.fill()方法填充数组,第二个,第三个数会被9填充