Arrays

Posted shine-rainbow

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Arrays相关的知识,希望对你有一定的参考价值。

一、二次封装自己的数组

目标:设计int 类型数组,

   (1)可以根据用户传入的容量设置数组的长度,如果用户未设置容量,默认设置长度为10(考虑使用多态性) 

   (2)判断数组是否为空

   (3)获取数组的容量

    

public class Array{
    //设置整形的数组
    private int [] data;
    //设置数组容量
    private int size;

    /**
     *设置带参数构造函数,创建容量为capacity大小的数组,并维护数组的初始容量为0
     * @param capacity
     */
    public Array(int capacity){
        data=new int[capacity];
        size=0;
    }

    /**
     * 设置数组的默认初始容量为10
     */
    public Array(){
        this(10);
    }

    /**
     * 获取数组当前的容量
     * @return 返回数组当前的容量
     */
    public int getSize(){
        return size;
    }

    /**
     * 判断数组是否为空
     * @return
     */
    public boolean isEmpty(){
        return size==0;
    }

    /**
     * 向数组中添加元素
     * @param e 元素e
     * @param index 插入元素的在数组中的位置
     * @return 添加结果
     */
    public void addElement(int index,int e){

        for (int i=size-1;i>=index;i--){
            data[i+1]=data[i];//eg data[3]=data[2]

        }
        data[index]=e;
        size++;//维护数组容量
    }

    @Override
    public String toString() {
       //格式化输出
        StringBuilder sb=new StringBuilder();
        sb.append(String.format("Array: 当前存储容量:size: %d , 总容量:capacity:%d
",size,data.length));
        sb.append("[");
        for (int i=0;i<size;i++){
            sb.append(data[i]);
            if(i!=size-1){
                sb.append(",");
            }
        }
        sb.append("]");
        return sb.toString();
    }
}

 

  

以上是关于Arrays的主要内容,如果未能解决你的问题,请参考以下文章

排序02-直接插入排序法

需要帮助修复“最小”输出。此外,通过不使用 Arrays.sort 来更改代码

Java Arrays.sort源代码解析

Java 中Arrays工具类的使用

java的Arrays工具类实战

转换 Arrays.asList 导致异常:java.util.Arrays$ArrayList 无法转换为 java.util.ArrayList