JavaSE之数组

一.数组基本概念

1.数组的初始化
  • 数组动态初始化(声明并开辟数组)
//一维数组:数据类型[] 数组名 = new 数组类型[数组长度];
int[] array = new int[10];
//二维数组:数据类型[][] 数组名 = new 数组类型[行个数][列个数];
 int[][] array = new int[3][4];
//一维数组
public class Test{
    public static void main(String[] args) {
        int[] array = new int[10];
        array[0] = 1;
        array[1] = 2;
        array[2] = 3;
        //for循环遍历数组
        for(int i = 0; i<array.length; i++){
            System.out.print(array[i]+" ");
        }
        System.out.println("\n");
        //for-each循环遍历数组
        for(int j:array){
            System.out.print(j+" ");
        }
    }
}
//二维数组
public class Test{
    public static void main(String[] args) {
        //初始化
        int[][] array = new int[3][4];
        //赋值操作
        array[0][0] = 1;
        array[0][1] = 2;
        array[0][2] = 3;
        //遍历数组
        for(int i = 0; i<array.length; i++){
            for(int j = 0; j<array[i].length; j++){
                System.out.print(array[i][j]);
            }
        }
    }
}

  • 数组静态初始化
    一维数组:
    数据类型[ ] 数组名 = new 数据类型[ ]{值…};
    数据类型[ ] 数组名 = {值…};
    二维数组:
    数据类型[ ][ ] 数组名 = new 数据类型[ ][ ]{{值…},{值…}…};
2.匿名数组
public class Test{
    public static void main(String[] args) {
        System.out.println(new int[]{1,2,3,4,5}.length);
    }
}

二.数组与方法互操作

1.引用传递

多个栈内存指向同一个堆内存。
方法与数组的互操作:方法接受数组、方法修改数组、方法返回数组。

int[] array = new int[5];
int[] x = array; //引用传递
public class Test{
    public static void main(String[] args) {
        int[] array = init();
        changeArray(array);
        printArray(array);
    }
    //方法返回数组
    public static int[] init(){
        return new int[]{1,2,3,4,5};
    }
    //方法修改数组
    public static void changeArray(int[] arr){
        for(int i = 0; i<arr.length; i++){
            arr[i] *= 5;
        }
    }
    //方法接收数组
    public static void printArray(int[] temp){
        for(int i = 0; i<temp.length; i++){
            System.out.print(temp[i]+" ");
        }
    }
}

三.Java对数组的支持

1.数组排序

只要是基本数据类型,sort()方法都能对数组进行升序排序。

java.util.Arrays.sort(数组名称);
2.数组部分拷贝
System.arraycopy(源数组名,源数组开始点,目标数组名,目标数组开始点,拷贝长度);
3.数组全拷贝

java.util.Arrays.copyOf(原数组名称,新数组长度)

int[] newArray= Arrays.copyOf(array, 10);

四.对象数组

以引用数据类型定义的的数组,如类、接口。
类名称[] 对象数组名称 = new 类名称[长度];

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值