Java对数组的支持及对象数组

1 Java对数组的支持

1.1 实现数组排序

Java类库中数组排序操作如:java.util.Arrays.sort(数组名);

只要是基本类型的数据,Java中提供的sort方法都可以进行排序处理。

1.2实现数组拷贝

  • 数组拷贝

System.arraycopy(源数组名称,源数组开始点,目标数组名称,目标数组开始点,拷贝长度);

目标数组arrDest: {1,2,3,4,5,6,7,8,9}    源数组arrSrc: {10,11,12,13,14,15,16}

替换后:1、2、13、14、5、6、7、8、9

  • 数组拷贝:java.util.Arrays.copy(源数组名称,新数组长度)

Arrays.copyOf()方法返回的数组是新的数组对象,原数组对象仍是原数组,不变,该拷贝不会影响原来的数组。

在Arrays.copyOf()的源码中,底层也是调用了System.arrayCopyOf()方法。

2 对象数组

对象数组往往是以引用数据类型为主的定义,例如:类,接口。

2.1动态初始化

类名称【】 对象数组名称 = new 类名称【长度】

数组动态初始化,每个元素都是其对应数据类型的默认值。

2.2 静态初始化

3 数组案例

要求:给一个数组,要求可以统计出该数组的最大值、最小值、平均值、总和

public class Test{
    public static void main(String[] args) {
        statisticsArr(new int[]{1,3,17,6,2,21,5});
    }
    public static void statisticsArr(int[] temp){
        double[] result = new double[4];
        result[0] = temp[0];//max
        result[1] = temp[0];//min
        result[2] = temp[0];//sum
        result[3] = temp[0];
        for(int i=0;i<temp.length;i++){
            result[2] += temp[i];
            if(temp[i]>result[0])
            {result[0]=temp[i];}
            if(temp[i]<result[1])
            {result[1]=temp[i];}
        }
        result[3] = result[2]/temp.length;
        System.out.println("最大值为:"+result[0]);
        System.out.println("最小值为:"+result[1]);
        System.out.println("总和为:"+result[2]);
        System.out.println("平均值为:"+result[3]);
    }
}

 

 

 

猜你喜欢

转载自blog.csdn.net/koala__/article/details/89277799
今日推荐