java顺序表

java顺序表,第1张

java顺序

顺序表是基于数组的线性表。在java中基本的数组问题:数组的长度是固定的,声明后只能存放固定的长度的数值,而顺序表是动态数组可以根据数据的大小来调整数组的大小。

import java.util.Arrays;

public class MyArray {
    private int[]data;
    private int size;

    public MyArray(){
       data=new int[10];
    }
    public MyArray(int cap){
        data=new int[cap];

    }
    //判断是否已满
    private void full(){
        if (size==data.length){
            System.err.println("full");
        }
    }
    //扩容
    private void grow(){
        int[] newdata= Arrays.copyOf(this.data,data.length<<1);
        this.data=newdata;

    }
    //中间插入
    public  void addIndex(int index,int val){
       if (size==data.length){
           grow();
       }
       if (index<0||index>size){
           System.err.println("err");
           return;
       }else {
           for (int i = size - 1; i >= index; i--) {
               data[i+1] = data[i];
           }
       }
        data[index]=val;
        size++;
    }
    public void addFist(int val){
        addIndex(0,val);
    }
    public void  addlast(int val){
        addIndex(size,val);
    }
public String toString(){
        String ret="[";

    for (int i = 0; i size){
            System.err.println("err");
            return;
        }
        for (int i = index; i  
public class test {
    public static void main(String[] args) {
    MyArray myArray=new MyArray(3);
    myArray.addlast(1);
    myArray.addlast(2);
    myArray.addlast(3);
        System.out.println(myArray);
        myArray.addIndex(2,4);
        System.out.println(myArray);
        myArray.removeIndex(2);
        System.out.println(myArray);

    }


}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5612707.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存