레이블이 StringBuilder인 게시물을 표시합니다. 모든 게시물 표시
레이블이 StringBuilder인 게시물을 표시합니다. 모든 게시물 표시

2016년 8월 10일 수요일

16day / SE / Map

http://codingbat.com
  • Iterator Interface : 반복자 -> 요소를 반복해서 열거하기 위한 표준 
컬렉션 계열의 모든 구현체의 요소를 반복 열거하기 위한 표준을 제공
대표적인 메서드는
hasNext() : boolean  다음 요소가 존재하면 true 아니면 false
next() : Object 다음 요소를 반환한다
ex)
1
2
3
while(iterator.hasNext()){
    System.out.println(iterator.next());
}
cs
   

  • java.util.Map Interface
   위 인터페이스를 구현한 대표적인 클래스
   HashMap , TreeMap(정렬) , LinkedHashMap(순서보장)
   
   Map 은 key와 value 쌍으로 저장된다
   key로 검색하여 value를 반환받을 수 있다
   ( 빠른 검색이 가능 )
   key는 유일해야 한다 ( 내부적으로 Set으로 저장된다 )    
   
   Stack : 선입후출 (LIFO: last in , first out)
   Queue :선입선출(FIFO : first in , first out)  


  • String과 StringBuilder(or StringBuffer) 비교 
http://www.programcreek.com
  String : 불변 

   같은 문자열을 Literal pool 영역에 한번 저장하여
   여러 변수에서 공유해서 사용한다
   문자열 변경시 자체 변경이 아니라 새로 생성된다
   
   StringBuilder(or StringBuffer) : 가변
   문자열 변경시 자체가 변경되기 때문에 변경이 많을 경우 적합

   StringBuilder와 StringBuffer의 차이점은 thread-safe 여부이다 
   StringBuffer는 synchronized 동기화 처리가 되어 있어서 멀티스레딩시 안전하다