관리 메뉴

프로그래밍 삽질 중

(2) LinkedList, Iterator 설명 및 문제 본문

과거 프로그래밍 자료들/자바(Java)

(2) LinkedList, Iterator 설명 및 문제

평부 2021. 3. 8. 23:36

※ LinkedList<String> 문법

- LinkedList<String> ll = new LinkedList<String>(); 

 

※Iterator<E> 인터페이스

- 컬렉션의 종류에 관계없이 반복자 이용 시 컬레션에 포함된 객체를 순차적으로 순회

- iterator 객체 이용 시 인덱스 없이 순차적 검색 가능

반환타입 메소드이름 설명
boolean hasNext() 다음 반복에서 사용될 요소가 있으면 true로 반환
E next() 다음 요로소 반환
void remove() 마지막으로 반환된 요소 제거

 

※ Set Collection 

- 순서가 없으면 중복되지 않는 객체를 저장하는 자료구조 지원

- 인덱스가 없고 저장순서 무시

 

 

 

[예시1]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import java.util.HashSet;
import java.util.Iterator;
 
public class HashSetEx {
 
    public static void main(String[] args) {
        HashSet<String> set = new HashSet<String>();
        set.add("one");
        set.add("two");
        set.add("three");
        set.add("four");
        
        Iterator<String> it = set.iterator();
        while(it.hasNext()) {
            System.out.println(it.next());
        }
        //HashSet은 순서와 상관없이 저장됨
            
        set.add("라이언");
        set.add("어피치");
        set.add("튜브");
        set.add("무지");
        set.add("라이언");
        set.add("쿤");
        set.add("춘삼이");
        
        Iterator<String> it2 = set.iterator();
        while(it2.hasNext()) {
            System.out.println(it2.next());
        }
        } 
    } 
 
 
cs

 

[예시2]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import java.util.ArrayList;
import java.util.HashSet;
import java.util.Iterator;
 
public class HashSetEx1 {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<String>();
        list.add("라이언");
        list.add("어피치");
        list.add("무지");
        list.add("쿤");
        
        HashSet<String> set = new HashSet<String>(list);
        set.add("죠르디");
        Iterator<String> it = set.iterator();
        while(it.hasNext()) {
            System.out.println(it.next());
        }
        
    }
}
 
cs