コレクションフレームとリスト
集合フレームワークの理解
アセンブリフレームのインタフェース
Listインタフェースの集合クラスを実装します。
古典的なListインタフェースを実現するクラス
Listインタフェースのクラスの特性を実現する
1. ArrayList
public static void main(String[] args) {
List<String> list = new ArrayList<>(); // 컬렉션 인스턴스 생성
// 컬렉션 인스턴스에 문자열 인스턴스 저장
list.add("Toy");
list.add("Box");
list.add("Robot");
for(int i=0; i<list.size(); i++){
System.out.print(list.get(i)+'\t');
}
System.out.println();
list.remove(0);
for(int i=0; i<list.size(); i++){
System.out.print(list.get(i)+'\t');
}
System.out.println();
}
2. LinkedList
public static void main(String[] args) {
List<String> list = new LinkedList<>(); // 유일한 변화!
// 컬렉션 인스턴스에 문자열 인스턴스 저장
list.add("Toy");
list.add("Box");
list.add("Robot");
for(int i=0; i<list.size(); i++){
System.out.print(list.get(i)+'\t');
}
System.out.println();
list.remove(0);
for(int i=0; i<list.size(); i++){
System.out.print(list.get(i)+'\t');
}
System.out.println();
}
Collectionのシーケンスアクセス方法
1.強化for文の使用
public static void main(String[]args){
List<String> list = new LinkedList<>();
// 인스턴스 저장
list.add("Toy");
list.add("Box");
list.add("Robot");
// 순차적 접근 방법 1
for(String s : list)
System.out.print(s + '\t');
}
2.重複文字の使用方法
public static void main(String[]args){
List<String> list = new LinkedList<>();
// 인스턴스 저장
list.add("Toy");
list.add("Box");
list.add("Robot");
// 반복자 생성
Iterator<String> itr = list.iterator();
// 반복자를 이용한 순차적 참조 1.
while(iter.hasNext()){
str = iter.next();
System.out.print(str + '\t');
}
// 반복자를 이용한 순차적 참조 2.
for(Iterator<String> itr = list.iterator(); itr.hasNext();){
str = itr.next();
System.out.print(n + '\t');
}
}
重複者の3つの方法
を返します.双方向反復器の追加方法(ListIterator、リストのみ)。
配列をArrayListに置き換える
// asList로 생성된 list는 Immutable 인스턴스로, 변경 불가능하다.
List<String> list = Arrays.asList("Toy", "Robot", "Box");
// 생성자 public ArrayList(Collection<? extends E> c)를 통한 인스턴스 생성을 하면
// 변경이 가능해진다.
list = new ArrayList<>(list); // ArrayList로 변경
list = new LinkedList<>(list); // LinkedList로 변경
ソース
Reference
この問題について(コレクションフレームとリスト), 我々は、より多くの情報をここで見つけました https://velog.io/@songyw0517/컬렉션-프레임워크와-리스트テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol