展开
拓展 关闭
订阅号推广码
GitHub
视频
公告栏 关闭

使用数组模拟集合

  • 编写方法
public class MyArrayList {

    private int[] n = new int[10]; //动态数组

    private int size=0;  // 长度

    public int size(){
        return this.size;
    }

    //添加一个元素
    public void add(int element){
        n[size]=element;
        size++;
    }

    //在指定位置插入一个元素
    public void add(int index,int element){
        // 将当前位置后的元素依次往后移动
        for(int i=size; i>index; i--){
            n[i]=n[i-1];
        }
        // 指定下标插入值
        n[index] = element;
        // 指针往后移动一位
        size++;
    }

    //取出指定下标的元素
    public int get(int index){
        return n[index];
    }

    //移除指定位置的元素
    public int remove(int index){
        for(int i=index; i<size; i++){
            n[i]=n[i+1];
        }
        // 指针往前移动一位
        size--;
        return size;
    }

    // 遍历数组
    public void display(){
        for (int i = 0; i < size ; i++) {
            System.out.print(n[i]+",");
        }
    }

}
  • 测试
public class Test {
    public static void main(String[] args) {
        MyArrayList mlist = new MyArrayList();
        mlist.add(10); // 添加一个元素到集合的末尾
        mlist.add(20);
        mlist.add(30);
        mlist.add(2, 36); // 添加一个元素到指定的位置
        mlist.display();// 遍历

        System.out.println();
        System.out.println(mlist.get(1));  // 取出指定下标的元素
        mlist.remove(0); // 移除指定位置的元素
        mlist.display();// 遍历

    }
}
posted @ 2023-09-29 15:29  DogLeftover  阅读(7)  评论(0编辑  收藏  举报