0

Java にカスタム汎用リンク リストがあります (これは Java の LinkedList やコレクションではありません)。リンクされたリストには、ノード、ListInterface、実際の LinkedList、クラス ファイル、およびメイン メソッドを含むファイルがあります。このリンクされたリストとクラスは、DVD インベントリ マネージャーを形成することになっています。私がやろうとしているのは、リストをトラバースして、ユーザーが渡した文字列が、リンクされたリスト内のオブジェクトの 1 つの変数の文字列と等しいかどうかを確認することです。

これは私がこれまでに持っているものです:

    if (movies.isEmpty()) {
        movies.add(new Dvd(userMovie), movies.length()+1);
    } else if (!movies.isEmpty()) {
        for (int i = 1; i <= movies.length(); i++) {
            if (movies.get(i).getTitle().equals(userMovie)) {   
                movies.get(i).addCopy();
            } else if (!movies.get(i).getTitle().equals(userMovie)) {
                movies.add(new Dvd(userMovie), movies.length()+1);
            }
        }
    }

英語: 映画のリンク リストが空の場合、渡された映画 (userMovie) を追加します。それ以外の場合は、映画のリンク リストが空でない場合は、リスト内の各項目をチェックして、渡された映画が既に存在するかどうかを確認します。すでに存在する場合は、コピーを追加します。渡された映画が存在しない場合は、その映画をリストに追加します。

これは、最後の部分を除いてすべて機能します。

空のときにムービーを追加すると、次のようになります。

 Star Wars 1 // one copy of star wars has been added

次に、同じムービーを再度追加すると、コピーが更新されます。

 Star Wars 2

次に、別のムービーを追加しようとすると、1 つではなく 2 つのコピーで開始されます。

 Harry Potter 2

次に、同じムービーをもう一度追加して何が起こるかを確認すると、次のようになります。

Star Wars 1
Harry Potter 3
Harry Potter 2
4

1 に答える 1