본문 바로가기

JAVA/기초 프로그래밍

ArrayList 와 LinkedList

  ArrayList : 검색, 대입 == Vector
 
  LinkedList : 실시간 추가, 삭제의 처리가 빠르다

 

 

ArrayList에서 LindedList로 바꿔 사용하는것이 포인트

	ArrayList<String> alist = new ArrayList<String>();
    		// list의 내용내용내용~
		LinkedList<String> blist = new  LinkedList<String>( alist );
        
        	//맨 앞의 element를 추가
			blist.addFirst("giants");
			
			//맨 뒤에 element를 추가
			blist.addLast("bears");

 

main

public class mainClass {

	public static void main(String[] args) {

	ArrayList<String> alist = new ArrayList<String>();
		
		alist.add("tigers");
		alist.add("rions");
		alist.add("twins");
		
		LinkedList<String> blist = new  LinkedList<String>( alist );
		
		for (String str : blist) {
			System.out.println(str);
		}
		
		if (blist.isEmpty()) { // boolean형  
			}
			//맨 앞의 element를 추가
			blist.addFirst("giants");
			
			//맨 뒤에 element를 추가
			blist.addLast("bears");
			
			for (int i = 0; i < blist.size(); i++) {
				String str = blist.get(i);
				System.out.println(i+":"+str);
			}
			
		//iterator : 반복자 == 포인터(주소) 0x10 -> 0x14 -> 0x18...주소이동
			
			Iterator<String> it;
			//제네릭<>은 리스트와 동일한 형으로
			it = blist.iterator();	//it = giants의 주소를 가지고 있음
			
			while(it.hasNext()) {
				String value = it.next();
				System.out.println("it :"+ value);
				//it :giants
				//it :tigers
				//it :rions
				//it :twins
				//it :bears
			}
	}
}