๐Ÿ“Œ Kotlin `IntArray` vs `List<Int>` โ€” ์™œ `toList()`๊ฐ€ ํ•„์š”ํ• ๊นŒ?

shin_stealerยท3์ผ ์ „
0

โœ… ์ƒํ™ฉ

val name = arrayOf("may", "kein")
val yearning = intArrayOf(5, 10)

// ์•„๋ž˜ ์ฝ”๋“œ ์˜ค๋ฅ˜ ๋ฐœ์ƒ
val map = name.zip(yearning) // โŒ

โœ… ์ด์œ : IntArray๋Š” Iterable์ด ์•„๋‹˜

  • zip() ํ•จ์ˆ˜๋Š” Iterable ํƒ€์ž…์„ ์š”๊ตฌํ•จ
  • IntArray๋Š” ๊ธฐ๋ณธํ˜• ๋ฐฐ์—ด (primitive) โ†’ Iterable ์•„๋‹˜ โ†’ ์‚ฌ์šฉ ๋ถˆ๊ฐ€
  • List<Int>๋Š” ๊ฐ์ฒดํ˜• ์ปฌ๋ ‰์…˜ โ†’ Iterable ๊ตฌํ˜„ โ†’ ์‚ฌ์šฉ ๊ฐ€๋Šฅ

โœ… ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

val map = name.zip(yearning.toList()) // โœ… OK
  • IntArray๋ฅผ toList()๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ zip() ๊ฐ€๋Šฅ

โœ… ๋น„๊ต ์ •๋ฆฌ

๊ตฌ๋ถ„IntArrayList<Int>
ํƒ€์ž…๊ธฐ๋ณธํ˜• ๋ฐฐ์—ด๊ฐ์ฒดํ˜• ์ปฌ๋ ‰์…˜
Java ๋Œ€์‘int[]List<Integer>
Iterable ์—ฌ๋ถ€โŒโœ…
zip(), map() ์‚ฌ์šฉโŒโœ…
๋ฉ”๋ชจ๋ฆฌ ํšจ์œจ์ข‹์Œ๋‚ฎ์Œ (๊ฐ์ฒด๋กœ ์ธํ•ด ์˜ค๋ฒ„ํ—ค๋“œ)

โœ… ๊ฒฐ๋ก 

  • zip(), map() ๋“ฑ ๊ณ ์ฐจ ํ•จ์ˆ˜ ์‚ฌ์šฉ ์‹œ โ†’ IntArray.toList() ํ•„์š”
  • ์‹ค์ˆ˜ ์ค„์ด๋ ค๋ฉด List<Int> ์ค‘์‹ฌ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ์Šต๊ด€๋„ ๐Ÿ‘
profile
I am a Blacksmith.

0๊ฐœ์˜ ๋Œ“๊ธ€