Collections - list

7930 ワード

String Genericを使用したArraylist

package ex05.collections.list00;

import java.util.ArrayList;

public class ArrayListEx {
	public static void main(String[] args) {
		ArrayList<String> arrList = new ArrayList<String>();
		arrList.add("홍길동");
		arrList.add("임꺽정");
		arrList.add("장길산");
		arrList.add("일지매");
		arrList.add("차돌바위");
		for (int i = 0; i < arrList.size(); i++) {
			System.out.println(arrList.get(i) + " ");
		}
		System.out.println();
		
		for(String str : arrList) {
			System.out.println(str + " ");
		}
	}
}
基本資料型はジュネーブに来られないのでWrapperclassを作成しました.
package ex05.collections.list01;

import java.util.ArrayList;

public class ArrayListEx {
	public static void main(String[] args) {
		//ArrayList<int> arrList = new ArrayList<int>();
		ArrayList<Integer> arrList = new ArrayList<Integer>();
		arrList.add(10);	// int 10이 -> Integer로 변환되어서 삽입
		arrList.add(20);
		arrList.add(30);
		arrList.add(40);
		arrList.add(50);
		for (int i = 0; i < arrList.size(); i++) {
			System.out.println(arrList.get(i) + " ");
		}
		System.out.println();
		
		for(int num : arrList) {
			System.out.println(num + " ");
		}
	}
}

Arraylist(オブジェクトタイプのJENICを使用)


TOstringを大きくしすぎてこそ値を出すことができる.
package ex05.collections.list02;

import java.util.ArrayList;

class Human{
	private String name;
	private int age;
	
	Human(String name, int age){
		this.name = name;
		this.age = age;
	}

	@Override
	public String toString() {
		return name+":"+age;
		//return super.toString();		//object 클래스의 tostring 
	}
	
	
}

public class ArrayListEx {
	public static void main(String[] args) {
		ArrayList<Human> arrList = new ArrayList<Human>();
		arrList.add(new Human("홍길동", 24));
		arrList.add(new Human("임꺽정", 33));
		arrList.add(new Human("장길산", 44));
		arrList.add(new Human("일지매", 55));
		arrList.add(new Human("차돌바위", 66));
		for (int i = 0; i < arrList.size(); i++) {
			System.out.println(arrList.get(i) + " ");
		}
		System.out.println();
		
		for(Human hu : arrList) {
			// Object로부터 상속받은 String toString()가 호출됨
			System.out.println(hu + " ");
		}
	}
}
-削除
package ex05.collections.list03;

import java.util.ArrayList;

class Human{
	private String name;
	private int age;
	
	Human(String name, int age){
		this.name = name;
		this.age = age;
	}

	
	
	
	public String getName() {
		return name;
	}


	public int getAge() {
		return age;
	}


	@Override
	public String toString() {
		return name+":"+age;
		//return super.toString();		//object 클래스의 tostring 
	}
	
	
}

public class ArrayListEx {
	public static void main(String[] args) {
		ArrayList<Human> arrList = new ArrayList<Human>();
		arrList.add(new Human("홍길동", 24));
		arrList.add(new Human("임꺽정", 33));
		arrList.add(new Human("장길산", 44));
		arrList.add(new Human("일지매", 55));
		arrList.add(new Human("차돌바위", 66));

		System.out.println();
		
		
		arrList.remove(0);
		
		for(Human hu : arrList) {
			System.out.println(hu + " ");
		}
		System.out.println();
		
		
		//장길산만 삭제하고 싶다면 
		for (int i = 0; i < arrList.size(); i++) {
			if(arrList.get(i).getName().equals("장길산"))
			{
				arrList.remove(i);
				break;
			}
		}
		
		for(Human hu : arrList) {		//장길산이 삭제되어 출력된다.
			System.out.println(hu + " ");
		}
		System.out.println();
	}
}

linked list

package ex05.collections.list04;

import java.util.LinkedList;

public class LinkedListEx {
	public static void main(String[] args) {
		LinkedList<String> arrList = new LinkedList<String>();
		arrList.add("홍길동");
		arrList.add("임꺽정");
		arrList.add("장길산");
		arrList.add("일지매");
		arrList.add("차돌바위");
		for (int i = 0; i < arrList.size(); i++) {
			System.out.println(arrList.get(i) + " ");
		}
		System.out.println();
		
		for(String str : arrList) {
			System.out.println(str + " ");
		}
    }
 }

vector

package ex05.collections.list05;

import java.util.Vector;

public class VectorEx {
	public static void main(String[] args) {
		Vector<String> arrList = new Vector<String>();
		arrList.add("홍길동");
		arrList.add("임꺽정");
		arrList.add("장길산");
		arrList.add("일지매");
		arrList.add("차돌바위");
		for (int i = 0; i < arrList.size(); i++) {
			System.out.println(arrList.get(i) + " ");
		}
		System.out.println();
		
		for(String str : arrList) {
			System.out.println(str + " ");
		}
	}
}
最終的にarraylist、linkedlist、vectorは似ていて、順番があります.
-反復を使用してアクセスできます-->反復を使用して、後でデータ構造を変更できます.
package ex05.collections.iterator07;

import java.util.ArrayList;
import java.util.Iterator;

public class IteratorEx {
	public static void main(String[] args) {
	
	ArrayList<String> arrList = new ArrayList<String>();
	arrList.add("홍길동");
	arrList.add("임꺽정");
	arrList.add("장길산");
	arrList.add("일지매");
	arrList.add("차돌바위");


	Iterator<String> itr = arrList.iterator();
	while(itr.hasNext())
		System.out.println(itr.next());
		
	}

}