Item 32. Varargs
μ λ€λ¦κ³Ό κ°λ³μΈμλ₯Ό ν¨κ» μΈ λλ μ μ€νλΌ
μ€μ²΄ν λΆκ°νμ (κ±°μ λͺ¨λ μ λ€λ¦κ³Ό 맀κ°λ³μν νμ )μ λ°νμμ μ»΄νμΌνλ°λ³΄λ€ νμ κ΄λ ¨ μ 보λ₯Ό μ κ² λ΄κ³ μλ€. μ΄λ° νΉμ§ λλ¬Έμ μ€μ²΄ν λΆκ° νμ μΌλ‘ varaargsλ₯Ό μ μΈνλ©΄ μ»΄νμΌλ¬μμ κ²½κ³ λ₯Ό λ°μμν¨λ€.
μ μ½λμ²λΌ κ°λ³μΈμλ₯Ό μ¬μ©νκ² λλ©΄μ λ§μ κ²½κ³ λ€μ΄ λ°μνκ³ , μλͺ»λ νμ μ΄ μ λ¬λμ΄λ λ°νμμμΌ μ μ μκ² λλ€.
κ°λ³μΈμ μλ¬κ° λ°μνμ§ μλ μ΄μ
item 28μμ μ μ μλ―μ΄ μ λ€λ¦ λ°°μ΄μ μ»΄νμΌλ¬μμ μμ μλ¬λ₯Ό λ°μμν¨λ€.
νμ§λ§ κ°λ³μΈμλ μ»΄νμΌλ¬μμ μλ¬λ₯Ό λ°μμν€κ³ μμ§ μμλ°, μ΄ μ΄μ λ μ€μ μ½λ μμ± μ λ§μ μ΄μ μ μ€ μ μμ΄ λͺ¨μμ μΈ μ μ μμ©νμ¬ κ°λ³μΈμλ₯Ό νμ©νκ³ μλ€.
λνμ μΌλ‘ Arrays.asList()
, Collections.addAll()
λ±μ΄ μλ€.(μ΄λ€μ νμ
μμ μ 보μ₯νκ³ μμ΄ λ¬Έμ μμ΄ μ¬μ© κ°λ₯νλ€.)
@SafeVarargs
μλ° 7 μ μλ λ°μν μ μλ κ²½κ³ λ₯Ό μ¨κΈ°κΈ° μν΄ @SuppressWarnings("unchecked")
μ΄λ
Έν
μ΄μ
μ μ¬μ©νμλ€.
νμ§λ§ μ΄ μ΄λ
Έν
μ΄μ
μ λ€λ₯Έ λ¬Έμ λ₯Ό μλ €μ£Όλ κ²½κ³ κΉμ§ μ¨κΈΈ μ μκΈ° λλ¬Έμ μλ° 7μμλ @SafeVarargs
μ΄λ
Έν
μ΄μ
μ΄ μΆκ°λμλ€.
λ€μκ³Ό κ°μ 쑰건μ λ§μ‘±νλ νμ€ν κ²½μ°μλ§ @SafeVarargs
μ΄λ
Έν
μ΄μ
μ μ¬μ©ν΄μΌ νλ©°, μ μ©λμ§ μμ varargsλ μ¬μ©νμ§ μλ κ²μ΄ μ’λ€.
κ°λ³μΈμλ‘ λ§λ€μ΄μ§ λ°°μ΄μ μ무κ²λ μ μ₯νμ§ μμ
ν΄λΉ λ°°μ΄μ μ°Έμ‘°κ° λ°μΌλ‘ λ ΈμΆλμ§ μμ
μμνκ² μΈμλ€μ μ λ¬νλ μΌλ§ μν
List.of()
μ¬μ©
List.of()
μ¬μ©@SaveVarargs
μ΄λ
Έν
μ΄μ
μ μ¬μ©νλ κ²μ΄ μλ, List.of()
λ₯Ό μ¬μ©νλ λ°©λ²λ μλ€.
List.of()
λ κ°λ³μΈμλ₯Ό λ°λ λ©μλμ΄λ©°, μ΄λ―Έ @SaveVarargs
μ΄λ
Έν
μ΄μ
μ΄ μ μ©λμ΄ μκΈ° λλ¬Έμ μ¬μ© μ κ²½κ³ κ° λ°μνμ§ μλλ€.
ν΄λΌμ΄μΈνΈ μ½λκ° λΉκ΅μ 볡μ‘ν΄μ§μ§λ§, μ΄λ―Έ λ§λ€μ΄μ§ κ²μ¦λ μ½λλ₯Ό μ¬μ©νλ κ²μ΄ λ μ’μ λ°©λ²μ΄ λ μ μλ€.
Last updated
Was this helpful?