๐ฏ ์์ดํ 30. ์ด์์ด๋ฉด ์ ๋ค๋ฆญ ๋ฉ์๋๋ก ๋ง๋ค๋ผ.
์ ๋ค๋ฆญ ํ์ ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก, ํด๋ผ์ด์ธํธ์์ ์ ๋ ฅ ๋งค๊ฐ๋ณ์์ ๋ฐํ๊ฐ์ ๋ช ์์ ์ผ๋ก ํ๋ณํํด์ผ ํ๋ ๋ฉ์๋๋ณด๋ค
์ ๋ค๋ฆญ ๋ฉ์๋๊ฐ ๋ ์์ ํ๋ฉฐ ์ฌ์ฉํ๊ธฐ๋ ์ฝ๋ค.
- ๋ก ํ์
์ฌ์ฉ - ์์ฉ ๋ถ๊ฐ!
public static Set union(Set s1, Set s2) { Set result = new HashSet<>(s1); result.addAll(s2); return result; }
์ปดํ์ผ์ ๋์ง๋ง Raw use of parameterized class 'Set'
, Unchecked call to 'addAll(Collection<? extends E>)' as a member of raw type 'java.util.Set'
์ด๋ฌํ ๋น๊ฒ์ฌ ๊ฒฝ๊ณ ๋ฅผ ๋ณด์ฌ์ค๋ค. ์ค์ IntelliJ์์ ์์ค๋ฅผ ํ์ธํด๋ณด๋ฉด ๋
ธ๋์ค์ด ๋ฒ
๋ฒ
๊ฐ์๋๊ฑธ ๋ณผ ์ ์๋ค.
- ๋น๊ฒ์ฌ ๊ฒฝ๊ณ ๋ฅผ ์ ๊ฑฐํ๊ธฐ ์ํด ์ ๋ค๋ฆญ ๋ฉ์๋๋ก ๋ฆฌํํ ๋ง
public static <E> Set<E> union(Set<E> s1, Set<E> s2) {
Set<E> result = new HashSet<>(s1);
result.addAll(s2);
return result;
}
๋ฉ์๋ ์ ์ธ์์์ ์ธ ์งํฉ์ ์์ ํ์ ์ ํ์ ๋งค๊ฐ๋ณ์๋ก ๋ช ์ํ๊ณ , ๋ฉ์๋ ์์์๋ ์ด ํ์ ๋งค๊ฐ๋ณ์๋ง ์ฌ์ฉํ๊ฒ ์์ ํ๋ฉด ๋๋ค.
์ฐธ๊ณ ์๋ฃ
Joshua Bloch, ใEffective Java 3/Eใ, ๊ฐ์๋งต์ ์ฎ๊น, ํ๋ก๊ทธ๋๋ฐ์ธ์ฌ์ดํธ(2018)
http://www.kyobobook.co.kr/product/detailViewKor.laf?ejkGb=KOR&mallGb=KOR&barcode=9788966262281&orderClick=LEa&Kc=