Hamutaro - Hamtaro 4

Backend/Java

[JAVA] Arrays.asList()์™€ List.of()์˜ ์ฐจ์ด์ 

carsumin 2024. 6. 10. 15:16

 

Arrays.asList()

  • ๋ฐฐ์—ด์„ ๊ณ ์ • ํฌ๊ธฐ์˜ ๋ฆฌ์ŠคํŠธ๋กœ ๋ณ€ํ™˜

< ์ฃผ์š”ํŠน์ง• >

 

1. ๊ณ ์ •ํฌ๊ธฐ

   - ์ด ๋ฆฌ์ŠคํŠธ๋Š” ๊ณ ์ •์ด๊ธฐ ๋•Œ๋ฌธ์— ์š”์†Œ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์ œ๊ฑฐํ•  ์ˆ˜ ์—†๋‹ค

   - ํฌ๊ธฐ๋ฅผ ๋ณ€๊ฒฝํ•˜๋ ค๊ณ  ํ•˜๋ฉด UnsupportedOperationException ๋ฐœ์ƒ

 

2. ์›๋ณธ๋ฐฐ์—ด๊ณผ ์—ฐ๊ฒฐ

   - ๋ฆฌ์ŠคํŠธ๋Š” ์›๋ณธ ๋ฐฐ์—ด๊ณผ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์–ด, ๋ฆฌ์ŠคํŠธ์˜ ์š”์†Œ๋ฅผ ๋ณ€๊ฒฝํ•˜๋ฉด ์›๋ณธ ๋ฐฐ์—ด๋„ ๋ณ€๊ฒฝ

 

3. ํƒ€์ž…์œ ์ถ”

   - ๋ฐฐ์—ด์˜ ํƒ€์ž…์„ ์œ ์ถ”ํ•˜์—ฌ ๋ฆฌ์ŠคํŠธ๋ฅผ ์ƒ์„ฑ

String[] array = {"apple", "banana", "cherry"};
List<String> list = Arrays.asList(array);

list.set(1, "blueberry"); // ๊ฐ€๋Šฅ
// list.add("date");      // UnsupportedOperationException ๋ฐœ์ƒ
System.out.println(Arrays.toString(array)); // [apple, blueberry, cherry]

 

List.of()

  • ๋ถˆ๋ณ€ ๋ฆฌ์ŠคํŠธ ์ƒ์„ฑ

<์ฃผ์š”ํŠน์ง•>

 

1. ๋ถˆ๋ณ€ ๋ฆฌ์ŠคํŠธ

   - ์ƒ์„ฑ๋œ ๋ฆฌ์ŠคํŠธ๋Š” ๋ถˆ๋ณ€์ด๋ฉฐ ์š”์†Œ๋ฅผ ์ถ”๊ฐ€, ์ œ๊ฑฐ, ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๋‹ค

 

2. ๋…๋ฆฝ๋œ ๋ฆฌ์ŠคํŠธ

   - ๋ฆฌ์ŠคํŠธ๋Š” ์›๋ณธ ๋ฐ์ดํ„ฐ์™€ ๋…๋ฆฝ์ 

   - ๋ฆฌ์ŠคํŠธ์˜ ์š”์†Œ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์›๋ณธ ๋ฐ์ดํ„ฐ๋„ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์Œ

 

3. ํƒ€์ž… ์œ ์ถ”

   - ์ œ๊ณต๋œ ์š”์†Œ์˜ ํƒ€์ž…์„ ์œ ์ถ”ํ•˜์—ฌ ๋ฆฌ์ŠคํŠธ๋ฅผ ์ƒ์„ฑ

 

List<String> list = List.of("apple", "banana", "cherry");

// list.set(1, "blueberry"); // UnsupportedOperationException ๋ฐœ์ƒ
// list.add("date");         // UnsupportedOperationException ๋ฐœ์ƒ

 

  Arrays.asList() List.of()
๋ณ€๊ฒฝ ๊ฐ€๋Šฅ์„ฑ ๋ฆฌ์ŠคํŠธ ๊ณ ์ •ํฌ๊ธฐ, ์š”์†Œ๋Š” ๋ณ€๊ฒฝ ๊ฐ€๋Šฅ ๋ฆฌ์ŠคํŠธ ๋ถˆ๋ณ€, ์š”์†Œ ์ถ”๊ฐ€๋‚˜ ์ œ๊ฑฐ ๋ณ€๊ฒฝ ๋ถˆ๊ฐ€๋Šฅ
์›๋ณธ ๋ฐ์ดํ„ฐ์™€์˜ ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ์˜ ์š”์†Œ๋ฅผ ๋ณ€๊ฒฝํ•˜๋ฉด ์›๋ณธ ๋ฐฐ์—ด๋„ ๋ณ€๊ฒฝ ์›๋ณธ ๋ฐฐ์—ด๊ณผ ๋…๋ฆฝ์ 
์ž๋ฐ” ๋ฒ„์ „ Java 5 ์ด์ƒ Java 9 ์ด์ƒ
์„ฑ๋Šฅ ๋ฐ ๋ฉ”๋ชจ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ ํšจ์œจ์  ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰ ๋‹ค๋ฆ„
์šฉ๋„ ๊ณ ์ • ํฌ๊ธฐ ๋ฆฌ์ŠคํŠธ๊ฐ€ ํ•„์š”ํ•˜๊ฑฐ๋‚˜ ์›๋ณธ ๋ฐฐ์—ด๊ณผ ๋™๊ธฐํ™”๋œ ๋ฆฌ์ŠคํŠธ ํ•„์š”ํ•  ๋•Œ ์‚ฌ์šฉ ๋ถˆ๋ณ€ ๋ฆฌ์ŠคํŠธ ํ•„์š”ํ•  ๋•Œ ์‚ฌ์šฉ