不一致があると感じているので、リストの定義とJavaでの実装を比較しようとしています。
リスト DataStructureの定義: リストまたはシーケンスは、順序付けられた値のコレクションを実装する抽象データ型であり、同じ値が複数回発生する可能性があります。[出典:http: //en.wikipedia.org/wiki/List_(abstract_data_type) ]
順序付けされたコレクションは、要素の挿入順序を維持するようになりました。
List の Java 実装 -> ArrayList : この実装によると、次の点があります。
- たとえばサイズ 5 のを初期化する
ArrayList
と、順序付けの原則に反するため、位置 1、2、3、4 に要素を挿入せずに要素を 5 番目の位置に直接挿入することはできません。したがって、Javaはここで例外を与えますが、これには完全に同意します。 ArrayList
「set(int index, E element)」や「add(int index, E element)」などのメソッドを提供し、リストの途中で要素を置換したり、リストの途中に新しい要素を挿入したりできます。ぜんぜんわかりません。掲載順が守られていないため、順序付けの原則に反します。
1 点目と 2 点目は矛盾しているように感じます。
ここでの私の理解のどこが間違っているのか、誰か説明してもらえますList
か?