美文网首页
32-数组相关类库

32-数组相关类库

作者: c88bc9f9d088 | 来源:发表于2020-11-09 10:13 被阅读0次

        由于数组是一个重要的概念,所以在Java语言本身也提供有数组的相关支持处理,这些处理是在开发中使用的。
    1、 数组排序:java.util.Arrays.sort(数组名称)

    class ArrayUtil{
        public static void printArray(int temp[]){
            for(int x = 0; x < temp.length; x++){
                System.out.print(temp[x]+"、");
            }
        }
    }
    public  class ArrayDemo {
        public static void main(String args[]){
            int data[] = new int[]{23,13,33,15,98,56,43,1,3,5,77};
            java.util.Arrays.sort(data); //排序
            ArrayUtil.printArray(data);
        }
    }
    

    2、 数组拷贝(把方法做了一些变形):

    • System.arraycopy(源数组,源数组开始点,目标数组,目标数组开始点,拷贝长度)
      范例:实现数组拷贝
    • 现在假设有两个数组:
      |- 数组一:1、2、3、4、5、6、7、8、9;
      |- 数组二:11、22、33、44、55、66、77、88、99;
    • 要求拷贝之后的数组二内容为:11、22、33、6、7、8、77、88、99;
    class ArrayUtil{
        public static void printArray(int temp[]){
            for(int x = 0; x < temp.length; x++){
                System.out.print(temp[x]+"、");
            }
        }
    }
    public  class ArrayDemo {
        public static void main(String args[]){
            int dataA[] = new int[]{1,2,3,4,5,6,7,8,9};
            int dataB[] = new int[]{11,22,33,44,55,66,77,88,99};
            System.arraycopy(dataA,5,dataB,3,3);
            ArrayUtil.printArray(dataB);
        }
    }
    

        这些操作的支持都是系统本身提供的,即:你都是可以在开发中使用的操作,实际上如果要自己实现拷贝也可以很容易的完成,直接定义一个方法操作即可。

    class ArrayUtil{
        public static void printArray(int temp[]){
            for(int x = 0; x < temp.length; x++){
                System.out.print(temp[x]+"、");
            }
        }
    
        public static void arraycopy(int[] src,int sindex,int dsc[],int dindex,int len){
            for(int x = 0; x < len; x++){
                dsc[dindex++] = src[sindex++];
            }
        }
    }
    public  class ArrayDemo {
        public static void main(String args[]){
            int dataA[] = new int[]{1,2,3,4,5,6,7,8,9};
            int dataB[] = new int[]{11,22,33,44,55,66,77,88,99};
            ArrayUtil.arraycopy(dataA, 5, dataB, 3, 3);
            ArrayUtil.printArray(dataB);
        }
    }
    

        如果要是自己去定义这种拷贝或者排序的方法就需要考虑所有的数据类型。

    相关文章

      网友评论

          本文标题:32-数组相关类库

          本文链接:https://www.haomeiwen.com/subject/bnclbktx.html