めけゃくけゃ ι–‹η™Ίθ€…πŸ¦Ύ
μ½”λ”© 짐 πŸ’ͺ
めけゃくけゃ ι–‹η™Ίθ€…πŸ¦Ύ
  • μΉ΄ν…Œκ³ λ¦¬ (135)
    • 개발 ν™˜κ²½ ꡬ좕 (12)
      • 개발 ν™˜κ²½ (5)
      • DB (0)
      • Node.js (4)
      • ν˜•μƒ 관리 (2)
      • Spring (1)
    • μ›Ή (11)
      • React (5)
      • 슀파λ₯΄νƒ€μ½”λ”©ν΄λŸ½__μ›Ή (6)
    • λͺ¨λ°”일 (2)
      • μ•ˆλ“œλ‘œμ΄λ“œ (2)
    • ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄ (55)
      • C (13)
      • Python (15)
      • SQL (5)
      • Java (22)
    • 사물인터넷 (11)
      • 아두이노 (11)
    • 일상 (31)
      • λ§›μ§‘ (13)
      • λž­ν‚Ήλ‹­μ»΄ (4)
      • ν›„κΈ° (11)
      • μš”λ¦¬ (3)
      • μž‘λ‹΄ (0)
    • ꡐ양 (4)
      • 심리학 (3)
      • ν…Œλ‹ˆμŠ€ (1)
    • 자격증 (9)
      • μ •λ³΄μ²˜λ¦¬κΈ°μ‚¬ (9)

λΈ”λ‘œκ·Έ 메뉴

  • πŸ’» github

인기 κΈ€

졜근 κΈ€

ν‹°μŠ€ν† λ¦¬

hELLO Β· Designed By μ •μƒμš°.
めけゃくけゃ ι–‹η™Ίθ€…πŸ¦Ύ

μ½”λ”© 짐 πŸ’ͺ

[Java] μžλ°” Iterator와 ListIterator
ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄/Java

[Java] μžλ°” Iterator와 ListIterator

2023. 3. 28. 16:24

[ μžλ°” Iterator ]

더보기

- μžλ°” μ»¬λ ‰μ…˜ ν”„λ ˆμž„μ›Œν¬(JCF)λŠ” μ €μž₯된 μš”μ†Œλ₯Ό μ½μ–΄μ˜€κΈ° μœ„ν•΄

  Iterator<E> μΈν„°νŽ˜μ΄μŠ€ μ‚¬μš©μ„ ν‘œμ€€ν™”λ‘œ μ œκ³΅ν•˜κ³  있음

- Collection μΈν„°νŽ˜μ΄μŠ€λ₯Ό μƒμ†λ°›λŠ” List와 Set μΈν„°νŽ˜μ΄μŠ€λŠ” Iterator μΈν„°νŽ˜μ΄μŠ€λ₯Ό κ΅¬ν˜„ν•œ

  클래슀의 객체λ₯Ό λ°˜ν™˜ν•˜λŠ” iterator() λ©”μ†Œλ“œλ₯Ό 톡해 각 μš”μ†Œμ— μ ‘κ·Ό κ°€λŠ₯

iterator() λ©”μ†Œλ“œ λ™μž‘ 원리

 

γ€Š Iterator λ©”μ†Œλ“œ 》

// -- Set<E> Interface --
Set <String> set = new HashSet <String>();
set.add("1");
set.add("2"); 
set.add("3"); 

System.out.println("== [Set μΈν„°νŽ˜μ΄μŠ€] HashSet 객체 -> Iterator 좜λ ₯ ==");
Iterator <String> iter = set.iterator();
while(iter.hasNext()) {
    System.out.print(iter.next() + " ");
}

/* [좜λ ₯κ²°κ³Ό]
   == [Set μΈν„°νŽ˜μ΄μŠ€] HashSet 객체 -> Iterator 객체 좜λ ₯ ==
   1 2 3  
*/

 

 

 

[ μžλ°” ListIterator ]

더보기

- ListIterator<E> μΈν„°νŽ˜μ΄μŠ€λŠ” Iterator μΈν„°νŽ˜μ΄μŠ€λ₯Ό 상속받아 κΈ°λŠ₯을 μΆ”κ°€ν•œ μΈν„°νŽ˜μ΄μŠ€

- κΈ°μ‘΄ Iterator μΈν„°νŽ˜μ΄μŠ€λŠ” μ»¬λ ‰μ…˜ μš”μ†Œ μ ‘κ·Ό μ‹œ ν•œ λ°©ν–₯으둜만 κ°€λŠ₯ν–ˆμŒ.

- ListIteratorλŠ” μ»¬λ ‰μ…˜ μš”μ†Œ λŒ€μ²΄, μΆ”κ°€, 인덱슀 검색 등을 μœ„ν•œ μž‘μ—…μ—μ„œ μ–‘λ°©ν–₯ 이동 지원

- List μΈν„°νŽ˜μ΄μŠ€λ₯Ό κ΅¬ν˜„ν•œ List μ»¬λ ‰μ…˜ ν΄λž˜μŠ€μ—μ„œλ§Œ μ‚¬μš© κ°€λŠ₯

 

γ€Š ListIterator λ©”μ†Œλ“œ 》

// -- List<E> Interface -- 
List <String> list = new ArrayList <String>();
list.add("1"); 
list.add("2");
list.add("3");

System.out.println("== [List μΈν„°νŽ˜μ΄μŠ€] ArrayList 객체 ListIterator 좜λ ₯ ==");
ListIterator <String> iter = list.listIterator();
while(iter.hasNext()) {
    System.out.print(iter.next() + " ");
}

while(iter.hasPrevious()) {	// μ—­μˆœ 좜λ ₯
    System.out.print(iter.previous() + " ");
}

/* [좜λ ₯κ²°κ³Ό]
   == [List μΈν„°νŽ˜μ΄μŠ€] ArrayList 객체 ListIterator 좜λ ₯ ==
   1 2 3 3 2 1 
*/
μ €μž‘μžν‘œμ‹œ λΉ„μ˜λ¦¬ λ³€κ²½κΈˆμ§€
    'ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄/Java' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€
    • [Java] μžλ°” μŠ€λ ˆλ“œμ™€ λ©€ν‹°μŠ€λ ˆλ“œ
    • [Java] μžλ°” 자료ꡬ쑰(JCF)
    • [μžλ°”] μžλ°” Wrapper 클래슀
    • [Java] μžλ°” λžŒλ‹€ (Lambda)
    めけゃくけゃ ι–‹η™Ίθ€…πŸ¦Ύ
    めけゃくけゃ ι–‹η™Ίθ€…πŸ¦Ύ
    πŸ‘Š λΈ”λ‘œκ·Έλ„ 근성이닀? πŸ‘Š

    ν‹°μŠ€ν† λ¦¬νˆ΄λ°”