๐Ÿคซย Stream์ด ๋„๋Œ€์ฒด ๋ญ˜๊นŒ? ๐Ÿ”—

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2024-11-21 แ„‹แ…ฉแ„’แ…ฎ 8.35.54.png


โ€์ŠคํŠธ๋ฆผ์ด๋ผ๋Š” ๊ฒƒ์ด ๋ฌด์—‡์ผ๊นŒ?โ€ ์— ๋Œ€ํ•œ ์ •์˜๊ฐ€ ๋˜๋Š” ์ด์•ผ๊ธฐ์ด๋‹ค. ์‚ฌ์‹ค ์•„์ง ์ดํ•ด๊ฐ€ ์ž˜ ๊ฐ€์ง€ ์•Š๋Š”๋‹ค..

โ—ํ•˜์ง€๋งŒ, ์ž๋ฐ”์—์„œ ์‚ฌ์šฉํ•˜๊ฒŒ ๋  Stream์„ ์‹ค์šฉ์ ์ธ ์ •์˜๋กœ ์„ค๋ช…ํ•˜์ž๋ฉด

โ€œ๋ฌด์–ธ๊ฐ€ ๋‚˜์—ดํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด๋ผ๋ฉด Streamํ™” ํ•ด์„œ ์ด๊ฒƒ ์ €๊ฒƒ ํŽธ๋ฆฌํ•˜๊ฒŒ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.โ€

์ •๋„๋กœ ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ๋‹ค.

์‹ค์ œ๋กœ,

<aside> ๐Ÿ’ก

1. ์ปฌ๋ ‰์…˜ (List, Set ๋“ฑ)

2. ๋ฐฐ์—ด

3. Queue (์ปฌ๋ž™์…˜ ๊ธฐ๋ฐ˜์ด๋‹ˆ๊นŒ)

4.Iterable ์ธํ„ฐํŽ˜์ด์Šค ๊ตฌํ˜„์ฒด ( ๋‚˜์—ด์ด ๊ฐ€๋Šฅํ•˜๋‹ค ? ํ•˜๋ฉด ๋  ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์•„์š”)

</aside>

๊ฐ™์€ ๊ฒฝ์šฐ streamํ™” ํ•ด์„œ ํŽธ๋ฆฌํ•œ ์ž‘์—…๋“ค์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.

์˜ˆ๋ฅผ๋“ค์–ด, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฆฌ์ŠคํŠธ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ด๋ณด์ž.

List<String> fruits = new ArrayList<>(Arrays.asList("banana", "apple", "grape", "orange"));

๋งŒ์•ฝ ์–ด๋–ค

List<String> fruits = new ArrayList<>(Arrays.asList("banana", "apple", "grape", "orange"));
List<String> updatedFruits = new ArrayList<>();
        
for (String fruit : fruits) {
   // ๊ฐ ๋ฌธ์ž์—ด์—์„œ 'a'๋ฅผ ์ œ์™ธํ•œ ๋ฌธ์ž์—ด์„ ์ƒˆ ๋ฆฌ์ŠคํŠธ์— ์ถ”๊ฐ€
   String updatedFruit = fruit.replace("a", "");
   updatedFruits.add(updatedFruit);
}

// ๊ฒฐ๊ณผ ์ถœ๋ ฅ
System.out.println(updatedFruits);

์ŠคํŠธ๋ฆผ API์˜ ํŠน์ง•์€?