ホームページ >Java >&#&チュートリアル >Java でカスタム ArrayList クラスを実装する方法

Java でカスタム ArrayList クラスを実装する方法

王林
王林転載
2023-06-03 08:55:031586ブラウズ

1. 全体的な実装アイデア

ArrayList クラスをカスタマイズするときは、多くの点を事前に考慮する必要があります

1. ArrayList は親インターフェイス List を継承する必要があります

2 、親インターフェイスのメソッドを書き換える必要があります

3. 使用する必要があるプロパティとメソッド: データを格納する配列 elementData データのデータ型が決まっていないため、配列のデータ型はここでは Object として定義されており、配列内の要素の数を記録するにはメンバー変数 count が必要です。

4. パラメーターなしのコンストラクターとパラメーター化されたコンストラクターを提供します

5. 必要に応じてメソッドの内容を変更します

2. メソッドを追加します

そこでは 2 つのメソッドです。1 つは仮パラメータを 1 つだけ持つメソッド、もう 1 つは 2 つの仮パラメータを持つメソッドです。

仮パラメータが 1 つだけある add メソッド

このメソッドは、追加の役割を果たします。 、渡された要素をすでに定義された配列に追加します

@Override
    public boolean add(Object o) {
    // 将传入的数据o放入数组中,该count是指代元素的个数
        elementData[count] = o;
    // 添加完成后需要将count加1
        count++;
        return true;
    }

仮パラメータを持つ 2 つの add メソッドがあります

このメソッドの最初のパラメータを挿入する必要があります。 isEmpty メソッド

このメソッドはカウントを判定するだけでよく、カウントが 0 の場合は配列が空であることを意味しますJava でカスタム ArrayList クラスを実装する方法

@Override
    public void add(int index, Object element) {
        // todo 在指定位置插入元素
        for (int i = count; i >index; i--) {
            elementData[i]=elementData[i-1];
        }
        elementData[index]=element;
    }

5 . 構築メソッド

構築メソッドで配列を初期化し、配列の長さを定義

@Override
    public int size() {
        return count;
    }

6. ArrayList全体のコード

@Override
    public boolean isEmpty() {
        return count==0;
    }

7. テストテストクラス

リーリー

以上がJava でカスタム ArrayList クラスを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。