¸ðºô¸®Æ¼42 ÀÌ»ç·Î ÀÏÇÏ¸é¼ ¸ÅÀÏ °í°´ÀÇ ¿äû¿¡ µû¶ó Äڵ带 ¸¸µå´Â Çö¾÷ °³¹ßÀÚ´Ù. ¡ºÇÑ ±ÇÀ¸·Î Àд ÄÄÇ»ÅÍ ±¸Á¶¿Í ÇÁ·Î±×·¡¹Ö¡»(Ã¥¸¸, 2021), ¡º½ÇÀü ÆÄÀ̽ã ÇÚÁî¿Â ÇÁ·ÎÁ§Æ®¡»(Ã¥¸¸, 2022), ¡ºÄÚƲ¸° ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö¡»(¿¡ÀÌÄÜ, 2023) µî 30±Ç ÀÌ»óÀÇ Ã¥À» ¹ø¿ªÇß°í, ¡ºÇÙ½É ÄÚƲ¸° ÇÁ·Î±×·¡¹Ö¡»(¿¡ÀÌÄÜ, 2023) Ã¥À» ¾´ ÀúÀÚÀ̱⵵ ÇÏ´Ù.
¢Â Â÷·Ê ¢Â
1Àå. ÄÚƲ¸° ½ÃÀÛÇϱâ
1.1 °£·«ÇÑ ¿ª»ç
1.2 ÄÚƲ¸° ¾ð¾îÀÇ Æ¯Â¡
1.3 ÄÚƲ¸° °³¹ß ȯ°æ°ú ¼³Ä¡ ¹× »ç¿ë ¹æ¹ý
1.3.1 À¥ µµ±¸
1.3.2 IDE: ÀÎÅÚ¸®J ¾ÆÀ̵ð¾î
1.3.3 ¸í·ÉÁÙ µµ±¸: kotlinc¿Í kotlin
Á¦1ºÎ ÄÚƲ¸° Äü½ºÅ¸Æ®
2Àå. ÇÁ·Î±×·¥À» ÀÌ·ç´Â ±âº» ´ÜÀ§: º¯¼ö¿Í ½Ä, ¹®
2.1 °¡Àå °£´ÜÇÑ ÄÚƲ¸° ÇÁ·Î±×·¥
2.2 ÁÖ¼®
2.3 °ª°ú À̸§, ¸®ÅÍ·²°ú º¯¼ö
2.4 ŸÀÔ°ú ŸÀÔ ÁöÁ¤, ŸÀÔ Ãß·Ð, ŸÀÔ º¯È¯
2.5 if, when
2.6 ¹üÀ§¿Í for
2.7 while°ú do while
2.8 break¿Í continue
2.9 ½Ä°ú ¿¬»êÀÚ
2.10 ¹è¿
2.10.1 ¹è¿ ¼±¾ðÇϱâ
2.10.2 ¹è¿À» »ý¼ºÇÏ´Â ´Ù¸¥ ¹æ¹ý
2.10.3 ¿ø½Ã ŸÀÔ ¹è¿°ú ÂüÁ¶ ŸÀÔ ¹è¿
2.10.4 ¹è¿ ±âº» ¿¬»ê
2.11 ¿¬½À¹®Á¦
3Àå. ÇÔ¼ö
3.1 ÇÔ¼ö
3.1.1 Unit ŸÀÔ
3.2 Áö¿ª º¯¼ö¿Í Áö¿ª ÇÔ¼ö, Á¤Àû ¿µ¿ª ±ÔÄ¢
3.2.1 Á¤Àû ¿µ¿ª ±ÔÄ¢
3.3 À͸í ÇÔ¼ö¿Í ¶÷´Ù
3.3.1 À͸í ÇÔ¼ö³ª ¶÷´Ù¿Í °ü·ÃµÈ ÆíÀÇ ±¸¹®
3.4 Ŭ·ÎÀú¿Í °ª Æ÷ȹ
3.5 ´Ù¾çÇÑ ÆĶó¹ÌÅÍ Á¤ÀÇ ¹æ¹ý
3.5.1 µðÆúÆ® ÆĶó¹ÌÅÍ
3.5.2 À̸§ ºÙÀº ÀÎÀÚ
3.5.3 °¡º¯ ±æÀÌ ÀÎÀÚ¿Í ½ºÇÁ·¹µå ¿¬»êÀÚ
3.6 ¿¬½À¹®Á¦
4Àå. Ŭ·¡½º¿Í °´Ã¼
4.1 Ŭ·¡½º
4.1.1 »ý¼ºÀÚ¿¡¼ Ŭ·¡½º ÇÁ·ÎÆÛƼ Á¤ÀÇÇϱâ
4.1.2 °´Ã¼¿Í ÂüÁ¶
4.1.3 °´Ã¼ÀÇ µ¿Àϼº°ú µ¿µî¼º
4.1.4 ÃʱâÈ ºí·Ï
4.2 »ó¼Ó
4.2.1 ¸â¹öÀÇ »ó¼Ó °ü°è Á¦¾î: override, open, final
4.2.2 »ó¼ÓÀÇ È°¿ë: ¿À¹ö¶óÀ̵带 ÅëÇÑ ¼¼ºÐÈ¿Í µ¿Àû µð½ºÆÐÄ¡
4.2.3 Any¿Í equals(), hashCode(), toString()
4.2.4 is¿Í as, ½º¸¶Æ® ij½ºÆ®
4.3 Ãß»ó Ŭ·¡½º
4.4 ÀÎÅÍÆäÀ̽º
4.4.1 ÀνºÅϽº Á¤ÀÇ¿Í »ó¼ÓÇϱâ
4.4.2 ÀÎÅÍÆäÀ̽º ¿À¹ö¶óÀÌµå ±ÔÄ¢
4.5 ÇÁ·ÎÆÛƼ Á¤ÀÇÇϱâ: °ÔÅÍ, ¼¼ÅÍ, µÞ¹ÞħÇÏ´Â Çʵå
4.5.1 µÞ¹ÞħÇÏ´Â Çʵå
4.5.2 µÞ¹ÞħÇÏ´Â Çʵ尡 ¾ø´Â °æ¿ì
4.5.3 Áö¿¬ ÃʱâÈ ÇÁ·ÎÆÛƼ
4.5.4 ÇÁ·ÎÆÛƼ °ÔÅÍ¿Í ÀÎÀÚ°¡ ¾ø´Â ÇÔ¼ö Áß ¾î´À °ÍÀ» »ç¿ëÇØ¾ß ÇÒ±î?
4.6 ¿¬½À¹®Á¦
5Àå. ¿¹¿Ü ó¸®
5.1 ¿¹¿Ü ´øÁö±â
5.1.1 ¿¹¿Ü ŸÀÔ ¼±¾ðÇϱâ
5.1.2 ´Ù¾çÇÑ ¿¹¿Ü ŸÀÔ
5.2 ¿¹¿Ü ¹Þ±â: catch
5.2.1 ¿¹¿Ü ´Ù½Ã ´øÁö±â¿Í ¿¹¿Ü º¯È¯ÇØ ´øÁö±â
5.2.2 try/catch ½Ä
5.2.3 Nothing ŸÀÔ
5.3 Á¤¸® ÀÛ¾÷: finally
5.3.1 ÀÚ¿ø ÀÚµ¿ ÇØÁ¦¸¦ ó¸®ÇÏ´Â ´õ ³ªÀº ¹æ¹ý
5.4 ¿¬½À¹®Á¦
6Àå. Á¦³×¸¯½º
6.1 Á¦³×¸¯½ºÀÇ Çʿ伺
6.2 ÄÚƲ¸° Á¦³×¸¯½º ¹®¹ý
6.3 ŸÀÔ ¹Ù¿îµå
6.3.1 Àç±ÍÀû ŸÀÔ ¹Ù¿îµå
6.3.2 ´ÙÁß ¹Ù¿îµå: where
6.4 ¼±¾ð ÁöÁ¡ º¯¼º: in, out
6.4.1 °øº¯¼º
6.4.2 ¹Ý°øº¯¼º
6.4.3 ¹«°øº¯
6.4.4 ¹Ý°øº¯¼º°ú °øº¯¼ºÀº ¾îµð¼ ¿À´Â°¡?
6.4.5 µÑ ÀÌ»óÀÇ Å¸ÀÔ ÆĶó¹ÌÅÍ°¡ ÀÖ´Â Á¦³×¸¯ ŸÀÔÀÇ º¯¼º ÆÇÁ¤
6.4.6 ¼±¾ð ÁöÁ¡ º¯¼º°ú »ç¿ë ÁöÁ¡ º¯¼º, ŸÀÔ ÇÁ·ÎÁ§¼Ç
6.5 ¿¬½À¹®Á¦
7Àå. ³Î °¡´É¼º
7.1 ³Î µµÀÔ°ú ³Î °¡´É¼ºÀÇ Çʿ伺
7.1.1 Á¦³×¸¯ ŸÀÔ ÆĶó¹ÌÅÍ¿¡¼ÀÇ ³Î °¡´É¼º
7.2 ³ÎÀÌ µÉ ¼ö Àִ ŸÀÔ°ú ±×·¸Áö ¾ÊÀº ŸÀÔ
7.3 ³Î ¿©ºÎ °Ë»ç¿Í ½º¸¶Æ® ij½ºÆ®
7.3.1 ³Î °¡´É¼º¿¡ ´ëÇÑ ½º¸¶Æ® ij½ºÆ®¿Í Nothing ŸÀÔ
7.3.2 ³ÎÀÌ µÉ ¼ö Àִ ŸÀÔÀÇ °ª°ú is, as ¿¬»ê
7.4 ¿¤ºñ½º ¿¬»êÀÚ¿Í ¾ÈÀüÇÑ È£Ãâ ¿¬»êÀÚ
7.5 ³Î ¾Æ´Ô ´Ü¾ð ¿¬»êÀÚ
7.6 ¿¬½À¹®Á¦
8Àå. ÆÐÅ°Áö¿Í ÀÓÆ÷Æ®
8.1 ÆÐÅ°Áö¿Í ÀÓÆ÷Æ®
8.1.1 ÆÐÅ°Áö ¼±¾ð
8.1.2 Àüü À̸§°ú ªÀº À̸§, ÀÓÆ÷Æ®
8.2 ÀÓÆ÷Æ® À̸§ Ãæµ¹°ú ÀÓÆ÷Æ® º°¸í
8.3 µðÆúÆ® ÀÓÆ÷Æ®
8.4 ¿¬½À¹®Á¦
9Àå. ÄÚƲ¸° Ä÷º¼Ç ±âÃÊ
9.1 Ä÷º¼Ç ¼Ò°³
9.1.1 Ä÷º¼ÇÀÌ Á¦°øÇÏ´Â ¿¬»êÀÇ ºÐ·ù
9.2 Iterable<>°ú Collection<>
9.2.1 Iterable<>
9.2.2 Collection<>
9.2.3 MutableIterable<>°ú MutableCollection<>
9.2.4 forEach(), forEachIndexed()
9.3 Ä÷º¼Ç Á¾·ù¿¡ µû¸¥ »ý¼º, ¿ø¼Ò Á¢±Ù, »ðÀÔ, »èÁ¦ ¹æ¹ý
9.3.1 ¸®½ºÆ®
9.3.2 ÁýÇÕ
9.3.3 ¸Ê
9.4 Ä÷º¼Ç °Ë»ö°ú °É·¯³»±â ¿¬»ê
9.4.1 filter(), filterNot()
9.4.2 filterIndexed()
9.4.3 filterNotNull()
9.4.4 indexOf(), lastIndexOf(), indexOfFirst(), indexOfLast()
9.5 Ä÷º¼Ç º¯È¯ ¿¬»ê
9.5.1 map(), mapNotNull()
9.5.2 flatten()
9.5.3 flatMap()
9.5.4 mapIndexed()¿Í flatMapIndexed()
9.6 Ä÷º¼Ç Á¾ÇÕ ¿¬»ê
9.6.1 ÇÕ°è ¿¬»ê: sum(), sumOf()
9.6.2 Ãà¾à ¿¬»ê: reduce(), reduceIndexed(), reduceIndexedNull()
9.6.3 ¿À¸¥ÂÊ Ãà¾à ¿¬»ê: reduceRight()¿Í reduceRightIndexed()
9.6.4 Á¢±â ¿¬»ê: fold(), foldIndexed(), foldRight(), foldRightIndexed()
9.6.5 ¹®ÀÚ¿ º¯È¯ ¿¬»ê
9.7 Ä÷º¼Ç Àüü º¯È¯ ¿¬»ê
9.7.1 ¸®½ºÆ® º¯È¯: toList(), toMutableList()
9.7.2 ¹è¿ º¯È¯: toTypedArray()
9.7.3 ÁýÇÕ º¯È¯: toSet()
9.7.4 ¸Ê º¯È¯: toMap(), toMutableMap()
9.8 ±âŸ ¿¬»ê
9.8.1 Á¤·Ä
9.9 ¿¬½À¹®Á¦
Á¦2ºÎ
10Àå. º¯¼ö ¼±¾ð°ú ±âº» ŸÀÔ ÀÚ¼¼È÷ »ìÆ캸±â
10.1 ±âº» µ¥ÀÌÅÍ Å¸ÀÔ
10.1.1 Á¤¼öÇü ±âº» ŸÀÔ
10.1.2 ½Ç¼öÇü ±âº» ŸÀÔ
10.1.3 Boolean ŸÀÔ
10.1.4 Char ŸÀÔ
10.2 º¯¼ö À̸§
10.2.1 À̸§ ±ÔÄ¢°ú À̸§ Ãæµ¹
10.2.2 lateinit º¯¼ö
10.2.3 const val
10.3 ¿¬»êÀÚ¿Í ¿¬»êÀÚ ¿ì¼±¼øÀ§
10.3.1 »ê¼ú ¿¬»êÀÚ
10.3.2 ¼ö ŸÀÔ °£ÀÇ Å¸ÀÔ º¯È¯
10.3.3 º¹ÇÕ ´ëÀÔ ¿¬»ê
10.3.4 Áõ°¡/°¨¼Ò ¿¬»ê
10.3.5 ºñ±³ ¿¬»ê°ú ºÒ¸° ¿¬»ê
10.3.6 ºñÆ® ¿¬»ê°ú ½ÃÇÁÆ® ¿¬»ê
10.3.7 ºñÆ® ¿¬»ê°ú ºÎÈ£ ¾ø´Â ŸÀÔ
10.3.8 ¼öÇÐ ¿¬»ê
10.3.9 ¿¬»êÀÚ ¿ì¼±¼øÀ§
10.4 (JVM) ¹®ÀÚ¿
10.4.1 ·Î¿ì ¹®ÀÚ¿
10.4.2 ¹®ÀÚ¿ ÅÛÇø´
10.4.3 ¹®ÀÚ¿ Á¶ÀÛ
10.5 ¿¬½À¹®Á¦
11Àå. Á¦¾î ±¸Á¶ ÀÚ¼¼È÷ »ìÆ캸±â
11.1 if ½Ä°ú Nothing ŸÀÔ
11.2 for ·çÇÁ¿Í ÀÌÅÍ·¹ÀÌÅÍÀÇ °ü°è: °ü½À¿¡ ±â¹ÝÇÑ ¾ð¾î ±â´É Á¦°ø
11.3 ¹üÀ§¿Í ¼ø¿
11.3.1 ¹üÀ§
11.3.2 ¼ø¿
11.4 break, continue¿Í ·¹À̺í
11.5 ¿¬½À¹®Á¦
12Àå. ÇÔ¼ö ÀÚ¼¼È÷ »ìÆ캸±â
12.1 operator Å°¿öµå¿Í ¿¬»êÀÚ ¿À¹ö·Îµå
12.1.1 ´ÜÇ× ¿¬»êÀÚ ¿À¹ö·Îµå
12.1.2 ´ÜÇ× Áõ°¡/°¨¼Ò ¿¬»êÀÚ ¿À¹ö·Îµå
12.1.3 ÀÌÇ× »ê¼ú ¿¬»êÀÚ ¿À¹ö·Îµå
12.1.4 ÀÌÇ× ¸â¹ö½Ê ¿¬»êÀÚ ¿À¹ö·Îµå
12.1.5 À妽º ¿¬»êÀÚ ¿À¹ö·Îµå
12.1.6 µ¿µî¼º ¿¬»êÀÚ ¿À¹ö·Îµå
12.1.7 ºñ±³ ¿¬»êÀÚ ¿À¹ö·Îµå
12.1.8 º¹ÇÕ ¿¬»êÀÚ ¿À¹ö·Îµå
12.1.9 È£Ãâ ¿¬»êÀÚ ¿À¹ö·Îµå
12.1.10 ¸â¹ö ÇÔ¼ö¸¦ ÁßÀ§ Çü½ÄÀ¸·Î ¾µ ¼ö ÀÖ´Â °æ¿ì
12.1.11 ±¸Á¶ ºÐÇØ¿Í componentN() ¿¬»êÀÚ ÇÔ¼ö
12.2 È®Àå ÇÔ¼ö¿Í È®Àå ÇÁ·ÎÆÛƼ
12.2.1 È®Àå ÇÔ¼ö´Â Á¤ÀûÀ¸·Î µð½ºÆÐÄ¡µÊ
12.2.2 ³ÎÀÌ µÉ ¼ö Àִ ŸÀÔ¿¡ ´ëÇÑ È®Àå ÇÔ¼ö
12.2.3 È®Àå ÇÁ·ÎÆÛƼ
12.2.4 Ŭ·¡½º ¸â¹ö·Î È®Àå Á¤ÀÇ
12.2.5 ÇÔ¼ö¿Í ÇÁ·ÎÆÛƼ¿¡ ´ëÇÑ ÂüÁ¶
12.2.6 ÇÔ¼ö ÂüÁ¶ÀÇ Å¸ÀÔ
12.2.7 ¼ö½Å °´Ã¼ ÁöÁ¤ ¶÷´Ù¿Í ¼ö½Å °´Ã¼ ÁöÁ¤ À͸í ÇÔ¼ö
12.2.8 À̸§Àº °°°í ÆĶó¹ÌÅ͸¸ ´Ù¸¥ È®Àå
12.3 ÇÔ¼ö ¿À¹ö·Îµå ÇØ°á
12.3.1 ¾î¶² ¿ä¼Ò¸¦ È£ÃâÇÒ ¼ö ÀÖÀ»±î?
12.3.2 ¿À¹ö·Îµå Èĺ¸ ÁýÇÕ
12.3.3 °¡Àå ±¸Ã¼ÀûÀÎ ÇÔ¼ö¸¦ Á¤Çϱâ
12.4 ¿µ¿ª ±ÔÄ¢ ´Ù½Ã º¸±â: µðÆúÆ® ÆĶó¹ÌÅÍ, Àç±Í
12.4.1 µðÆúÆ® ÆĶó¹ÌÅÍ¿¡¼ ´Ù¸¥ ÆĶó¹ÌÅÍ À̸§ »ç¿ëÇϱâ
12.4.2 Àç±Í È£Ãâ°ú ²¿¸® Àç±Í
12.5 ÀζóÀÎ ÇÔ¼ö
12.5.1 °íÂ÷ ÇÔ¼ö ÆĶó¹ÌÅÍ·Î Àü´ÞµÈ ¶÷´ÙÀÇ ÀζóÀÌ´×
12.5.2 Áö¿ª return°ú ºñÁö¿ª return
12.5.3 inline¿¡¼ ÀζóÀÎµÈ ¶÷´ÙÀÇ Àü´Þ
12.5.4 noline°ú crossinline
12.5.5 ÀζóÀÎ ÇÁ·ÎÆÛƼ¿Í ÀζóÀÎ È®Àå
12.5.6 reified
12.5.7 °ø°³µÈ ÀζóÀÎ ÇÔ¼öÀÇ Á¦¾à »çÇ×
12.6 ¿¬½À¹®Á¦
13Àå. °´Ã¼ÁöÇâ ÀÚ¼¼È÷ »ìÆ캸±â
13.1 ³»Æ÷ Ŭ·¡½º¿Í ³»ºÎ Ŭ·¡½º
13.1.1 ³»Æ÷ Ŭ·¡½º
13.1.2 ³»ºÎ Ŭ·¡½º
13.1.3 Ŭ·¡½º ¾È¿¡ ³»Æ÷½Ãų ¼ö ÀÖ´Â ´ë»ó
13.1.4 ÀÎÅÍÆäÀ̽º ¾È¿¡ ³»Æ÷½Ãų ¼ö ÀÖ´Â ´ë»ó
13.2 object·Î ½Ì±ÛÅÏ °´Ã¼ ¼±¾ðÇϱâ
13.2.1 ÀÍ¸í °´Ã¼
13.2.2 °´Ã¼°¡ ´Ù¸¥ Ŭ·¡½º³ª ÀÎÅÍÆäÀ̽º »ó¼ÓÇϱâ
13.2.3 fun interface ¼±¾ð°ú ¶÷´Ù¸¦ »ç¿ëÇÑ ÀÍ¸í °´Ã¼ ¼±¾ð
13.2.4 µ¿¹Ý °´Ã¼
13.3 µ¥ÀÌÅÍ Å¬·¡½º
13.3.1 µ¥ÀÌÅÍ Å¸ÀÔ Á¤ÀÇ Á¦¾à »çÇ×
13.3.2 copy()¸¦ ÅëÇÑ °´Ã¼ º¹»ç
13.3.3 µ¥ÀÌÅÍ Å¬·¡½º º»¹®¿¡ Á¤ÀÇµÈ ÇÁ·ÎÆÛƼ
13.3.4 µ¥ÀÌÅÍ Å¬·¡½ºÀÇ »ó¼Ó
13.3.5 Á¶¾ð: µ¥ÀÌÅÍ Å¬·¡½º´Â ºÒº¯ °´Ã¼·Î¸¸ »ç¿ëÇ϶ó
13.4 ÀÌ³Ñ Å¬·¡½º·Î ¿©·¯ »ó¼ö°ª Á¤ÀÇÇϱâ
13.4.1 ÀÌ³Ñ Å¬·¡½º¿¡ Á¤ÀÇµÈ ¸â¹ö ÇÔ¼ö³ª ÇÁ·ÎÆÛƼ
13.4.2 ÀÌ³Ñ »ó¼ö: ½Ì±ÛÅÏ °´Ã¼
13.5 °ª Ŭ·¡½º¸¦ ÅëÇØ Å¸ÀÔ ¾ÈÀü¼º°ú ¼º´É µ¿½Ã¿¡ ¾ò±â
13.6 ºÀÀÎµÈ Å¬·¡½º³ª ºÀÀÎµÈ ÀÎÅÍÆäÀ̽º¸¦ ÅëÇØ Å¬·¡½º °èÃþ Á¦ÇÑÇϱâ
13.7 ºÎ»ý¼ºÀÚ
13.7.1 ÁÖ»ý¼ºÀÚ°¡ ¾ø´Â °æ¿ì ºÎ»ý¼ºÀÚ
13.8 °¡½Ã¼º º¯°æÀÚ
13.8.1 Ŭ·¡½º³ª °´Ã¼¿¡ ¼±¾ðµÈ À̸§ÀÇ °¡½Ã¼º
13.8.2 ÆÐÅ°Áö ÃÖ»óÀ§¿¡ ¼±¾ðµÇ´Â À̸§ÀÇ °¡½Ã¼º
13.9 À§ÀÓÀ» ÅëÇØ ±¸ÇöÀ» ´Ù¸¥ °´Ã¼¿¡ ¹Ì·ç±â
13.9.1 ÀÎÅÍÆäÀ̽º ±¸Çö À§ÀÓ
13.9.2 ÇÁ·ÎÆÛƼ À§ÀÓ
13.9.3 ÄÚƲ¸°ÀÌ ±âº» Á¦°øÇÏ´Â À§ÀÓ
13.9.4 getValue()¿Í setValue() ±ÔÄ¢
13.9.5 À§ÀÓ ÇÁ·ÎÆÛƼ ÄÄÆÄÀÏ ¹æ¹ý
13.9.6 operator fun provideDelegate()
13.10 ŸÀÔ º°¸í
13.11 ¿¬½À¹®Á¦
14Àå. Á¦³×¸¯½º 2
14.1 ½ºÅ¸ ÇÁ·ÎÁ§¼Ç
14.2 ŸÀÔ ¼Ò°Å(JVM)¿Í reified
14.2.1 ŸÀÔ ¼Ò°Å
14.2.2 reified: ½ÇüÈÇÑ Å¸ÀÔ
14.3 ¿µ¿ª ÇÔ¼ö
14.3.1 let
14.3.2 run ÀÏ¹Ý ÇÔ¼ö¿Í run È®Àå ÇÔ¼ö
14.3.3 with()
14.3.4 also()
14.3.5 apply()
14.3.6 takeIf()¿Í takeUnless()
14.3.7 ÄÚƲ¸° °ø½Ä ¹®¼ÀÇ ¿µ¿ª ÇÔ¼ö °ø½Ä °¡À̵å
14.4 ¿¬½À¹®Á¦
15Àå. Ä÷º¼Ç 2
15.1 µÎ Ä÷º¼ÇÀ» ½ÖÀ¸·Î ¿¬°áÇϱâ, ¿¬°áÀ» Ç®¾î µÎ Ä÷º¼Ç ¸¸µé±â: zip(), unzip(), zipWithNext()
15.2 Ä÷º¼ÇÀ» Á¶°Ç¿¡ µû¶ó µÑ·Î ³ª´©±â: partition()
15.3 fold()³ª reduce()ÀÇ ÁøÇà ´Ü°è¸¦ ¸®½ºÆ®·Î µ¹·Á¹Þ±â: runningFold(), runningFoldIndexed(), runningReduce(), runningReduceIndexed()
15.3.1 runningFold(), runningFoldIndexed()ÀÇ º°¸í: scan()°ú scanIndexed()
15.4 ¿ø¼Ò ¼±Åðú Á¦¿Ü: take(), drop(), takeLast(), dropLast(), takeWhile(), dropWhile(), takeLastWhile(), dropLastWhile()
15.4.1 °³¼ö·Î ¼±ÅÃÇϰųª Á¦¿ÜÇϱâ: take(), drop(), takeLast(), dropLast()
15.4.2 ¾Õ¿¡¼ºÎÅÍ Á¶°Ç¿¡ ¸Â´Â ¿ø¼Ò¸¦ ã°Å³ª Á¦°ÅÇϱâ: takeWhile(), dropWhile(), takeLastWhile(), dropLastWhile()
15.5 ½½¶óÀ̵ù À©µµ¿ì¿Í µ¢¾î¸®·Î ³ª´©±â: windowed(), chunked()
15.6 °ª ¿¬°ü½ÃÅ°±â: associate(), associateBy(), associateByTo(), associateTo(), associateWith(), associateWithTo()
15.6.1 associate()¿Í associateTo()
15.6.2 associateBy()¿Í associateByTo()
15.6.3 associateWith()¿Í associateWithTo()
15.7 Å°¿¡ µû¶ó ±×·ìÀ¸·Î ³ª´©±â: groupBy(), groupByTo()
15.8 ±×·ìÀ» ó¸®Çϱâ À§ÇÑ Grouping °´Ã¼ ¾ò±â: groupingBy()
15.8.1 Å° ¼¿·ºÅÍ·Î ±×·çÇÎ ¸¸µé±â: groupingBy()
15.8.2 ±×·ìº° ¸â¹ö °³¼ö ¼¼±â: eachCount()
15.8.3 ±×·ìº°·Î reduce()ÇÑ °á°ú¸¦ Å°¿Í ¿¬°ü½ÃÅ°±â: reduce()
15.8.4 ±×·ìº°·Î fold()ÇÑ °á°ú¸¦ Å°¿¡ ¿¬°ü½ÃÅ°±â: aggregate()
15.8.5 ±×·ìº°·Î ´©Àû ¿¬»êÀ» Àû¿ëÇÑ °á°ú¸¦ Å°¿¡ ¿¬°ü½ÃÅ°±â: aggregate()
15.9 Á¶°ÇÀ» ¸¸Á·ÇÏ´Â ¿ø¼Ò °Ë»ç: none(), any(), all()
15.10 Ä÷º¼Ç¿¡ ´ëÇÑ ÁýÇÕ ¿¬»ê: intersect(), union(), minus()
15.10.1 Ä÷º¼Ç¿¡ ¿ø¼Ò¸¦ µ¡ºÙÀ̰ųª Ä÷º¼Ç¿¡¼ ¿ø¼Ò¸¦ Á¦°ÅÇÏ´Â ¿¬»ê: plusElement(), minusElement()
15.11 µÚ¼¯±â ¿¬»ê: shuffled()
15.12 ¹è¿ ¿¬»ê
15.12.1 ¹è¿ ºñ±³: contentEquals(), contentDeepEauals()
15.12.2 ¹è¿ÀÇ ³»¿ë º¹»ç: copyOf(), copyOfRange(), copyInto()
15.12.3 ¹è¿¿¡ °ª ä¿ö ³Ö±â: fill()
15.12.4 µÚ¼¯±â ¿¬»ê: shuffle()
15.13 ½ÃÄö½º
15.13.1 ½ÃÄö½º ¸¸µé±â: asSequence(), generateSequence(), sequence()
15.14 ¿¬½À¹®Á¦
¸¶¹«¸®: ´ÙÀ½¿¡ °øºÎÇÒ ³»¿ë°ú Àüü µ¹¾Æº¸±â