Item 58. For-each Loop
μ ν΅μ μΈ for λ¬Έ 보λ€λ for-each λ¬Έμ μ¬μ©νλΌ
μ ν΅μ μΈ for λ¬ΈμΌλ‘ μννκ² λλ©΄ λΆνμνκ² μΈλ±μ€ λ³μμ λ°λ³΅μκ° μ¬μ©λμ΄ κ°λ
μ±μ΄ λ¨μ΄μ§κ³ , μλͺ» μ¬μ©ν κ²½μ° λ²κ·Έλ₯Ό λ°μμν¬ μ μλ€.
λ°λ³΅ λμμ΄ λ°°μ΄μ΄λ Iterable
μΈν°νμ΄μ€λ₯Ό ꡬνν κ°μ²΄λΌλ©΄ for-each λ¬Έμ μ¬μ©νλ©΄ λ κ°κ²°νκ³ μμ νκ² μνν μ μλ€.
κ²λ€κ° λλΆλΆ μν©μμ μ±λ₯ μ°¨μ΄κ° μ λ€.(LinkedListλ for-each λ¬Έμ΄ ν¨μ¬ λΉ λ¦)
forλ¬Έ μ¬μ©μ λ²κ·Έ
for λ¬Έμ μ¬μ©ν κ²½μ° μλμ κ°μ λ²κ·Έκ° λ°μν μ μλ€.
μμ κ°μ΄ μ½λλ₯Ό μμ±ν μ μλλ°, κ·Έλλ§ NoSuchElementException
μ΄ λ°μνμ¬ λ²κ·Έλ₯Ό μ½κ² λ°κ²¬ν μ μμ§λ§, κ°μκ° λ λ§μμ κ²½μ°μ λ
Όλ¦¬μ μ€λ₯κ° λ°μν μ μλ€.
μμ λ μ½λμ for-each λ¬Έμ μ¬μ©ν μ½λλ μλμ κ°μλ°, for-each λ¬Έμ΄ ν¨μ¬ κ°κ²°νκ³ λ²κ·Έ λ°μ κ°λ₯μ±μ΄ μ λ€λ κ²μ μ μ μλ€.
for-each λ¬Έ μ¬μ© λΆκ°λ₯ μν©
for-each λ¬Έμ μ¬μ©ν μ μλ μν©μ΄ μΈ κ°μ§ μλ€.
νκ΄΄μ μΈ νν°λ§(destructive filtering): 컬λ μ μ μννλ©΄μ μ νλ μμλ₯Ό μ κ±°ν΄μΌ ν λ
λ³ν(transforming): 리μ€νΈλ λ°°μ΄μ μννλ©΄μ κ·Έ μμμ κ° μΌλΆ νΉμ μ 체λ₯Ό κ΅μ²΄ν΄μΌ ν λ
λ³λ ¬ λ°λ³΅(parallel iteration): μ¬λ¬ 컬λ μ μ λ³λ ¬λ‘ μνν΄μΌ ν λλ κ°κ°μ λ°λ³΅μμ μΈλ±μ€ λ³μλ₯Ό μ¬μ©ν΄μΌ νλ―λ‘ for-each λ¬Έ μ¬μ© λΆκ°λ₯
Last updated
Was this helpful?