{"id":369,"date":"2021-02-04T03:20:22","date_gmt":"2021-02-04T03:20:22","guid":{"rendered":"http:\/\/scrutineer.co.kr\/wordpress\/?p=369"},"modified":"2021-02-04T04:15:17","modified_gmt":"2021-02-04T04:15:17","slug":"%eb%aa%a8%eb%8d%98-%ec%9e%90%eb%b0%94-%ec%9d%b8-%ec%95%a1%ec%85%98-8%ec%9e%a5","status":"publish","type":"post","link":"https:\/\/scrutineer.co.kr\/wordpress\/index.php\/2021\/02\/04\/%eb%aa%a8%eb%8d%98-%ec%9e%90%eb%b0%94-%ec%9d%b8-%ec%95%a1%ec%85%98-8%ec%9e%a5\/","title":{"rendered":"\ubaa8\ub358 \uc790\ubc14 \uc778 \uc561\uc158 8\uc7a5"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">8\uc7a5 \uccab\ubb38\uc7a5.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"505\" height=\"32\" src=\"https:\/\/scrutineer.co.kr\/wordpress\/wp-content\/uploads\/2021\/02\/image.png\" alt=\"\" class=\"wp-image-370\" srcset=\"https:\/\/scrutineer.co.kr\/wordpress\/wp-content\/uploads\/2021\/02\/image.png 505w, https:\/\/scrutineer.co.kr\/wordpress\/wp-content\/uploads\/2021\/02\/image-300x19.png 300w\" sizes=\"auto, (max-width: 505px) 100vw, 505px\" \/><figcaption>\ub124&#8230;.?<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\uceec\ub809\uc158 API\uac00 \uc790\ubc14 \uac1c\ubc1c\uc790\uc758 \uc0b6\uc744 \uc678\ub86d\uc9c0 \uc54a\uac8c(&#8230;.) \ud574 \uc8fc\uc5c8\uc73c\ub098, \uadf9\ud610\uc778\uac74 \uc5ec\uc804\ud558\ub2e4. \uc608\uc0c1\uce58 \ubabb\ud55c \uc704\uce58\uc5d0\uc11c \uc5d0\ub7ec\ub3c4 \ubfdc\ubfdc \ub0b4\ubc49\uace0, \uc0ac\uc6a9\ud558\ub294 \uac83 \uc790\uccb4\ub3c4 \uc131\uac00\uc2dc\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\ud558\uc9c0\ub9cc \ubaa8\ub358 \uc790\ubc14\ub85c \ub3cc\uc785\ud558\uba74\uc11c(8,9) \uc774 \uceec\ub809\uc158 API\ub97c \uc0ac\uc6a9\ud558\uae30 \uc870\uae08 \ub354 \ud3b8\ud558\uac8c \ub9ce\uc740 \uac1c\uc120\uc774 \ub418\uc5c8\ub2e4.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>\ub9ac\uc2a4\ud2b8(List)<\/li><li>\uc9d1\ud569(Set)<\/li><li>\ub9f5(Map)<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774 \ub300\ud45c\uc801\uc778 \uceec\ub809\uc158\ub4e4\uc744 \ub9c8\uc74c\uaecf manipulate \ud560 \uc218 \uc788\ub3c4\ub85d \ud574 \uc8fc\ub294 \uac83\ub4e4\uc5d0 \ub300\ud574 \uc0b4\ud3b4\ubcf4\uae30\ub85c \ud558\uc790<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\uceec\ub809\uc158 \ud329\ud1a0\ub9ac<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\ubcc4 \uc0dd\uac01\uc5c6\uc774 \ub9ac\uc2a4\ud2b8\ub97c \ub9cc\ub4e0\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">List&lt;String> friends = new ArrayList&lt;>();\nfriends.add(\"John\");\nfriends.add(\"Tom\");\nfriends.add(\"Lee\");<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\ub9ac\uc2a4\ud2b8\uc5d0 \uace0\uc791 3\uac1c\uc758 \uc6d0\uc18c\ub9cc \ub123\ub294\ub370 4\uc904\uc758 \ucf54\ub4dc\ub97c \uc4f0\uace0 \uc549\uc558\ub2e4. \uc190\uac00\ub77d \uc544\ud508\uac74 \ub364&#8230;.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uadf8\ub798\uc11c \uc870\uae08 \uc788\uc5b4\ubcf4\uc774\ub294 \ubc29\ubc95\uc73c\ub85c \ucf54\ub4dc\ub97c \ubc14\uafd4\ubcf8\ub2e4<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">List&lt;String> friends = Arrays.asList(\"John\",\"Tom\",\"Lee);<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uae54\ub054\ud558\ub2e4. \uadfc\ub370 \uc0c8 \uce5c\uad6c\uac00 \uc0dd\uacbc\ub2e4<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">List&lt;String> friends = Arrays.asList(\"John\",\"Tom\",\"Lee);\nfriends.add(0,\"Doe\"); \/\/ UnsupportedOperationException \ubc1c\uc0dd<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uadf8\ub807\ub2e4. friends\uac00 \uc0dd\uc131\uc2dc \uace0\uc815\ud06c\uae30\uc758 Array\ub85c \uad6c\ud604 \ub418\uc5c8\ub514 \ub54c\ubb38\uc5d0, \uc775\uc149\uc158\uc774 \ubc1c\uc0dd\ud55c\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\ub09c \uce5c\uad6c\ub97c \ub354 \ucd94\uac00\ud560 \uc218 \uc5c6\ub294, &#8216;\uceec\ub809\uc158 API\uac00 \uc788\ub294\ub370\ub3c4 \ub9ce\uc774 \uc678\ub85c\uc6b4 \uc790\ubc14 \uac1c\ubc1c\uc790&#8217; \uac00 \ub418\uc5c8\ub2e4&#8230;..<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" style=\"font-size:25px\">\uadf8\ub7fc \uc5b4\ub5bb\uac8c \ud558\uc9c0?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\ubc29\ubc95\uc774 \uc788\ub2e4\uace0 \ud55c\ub2e4(?) List.of \ud329\ud1a0\ub9ac \uba54\uc18c\ub4dc\ub97c \uc774\uc6a9\ud558\uba74 \ub41c\ub2e4\uace0 \ud55c\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">List&lt;String> friends = List.of(\"John\",\"Tom\",\"Lee\");<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uadfc\ub370 \uc598\ub3c4 \uc0ac\uc2e4 friends.add() \ub85c \uc694\uc18c\ub97c \ucd94\uac00\ud558\ub824 \ud558\uba74 \ub9c8\ucc2c\uac00\uc9c0\ub85c UnsupportedOperationException\uc774 \ubc1c\uc0dd\ud55c\ub2e4&#8230;&#8230;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\ucc45\uc5d0\uc11c \ud6fc\uc774\ud06c\ub97c \uc92c\ub2e4. \ub9c8\uce58 \ubc29\ubc95\uc774 \uc788\ub294 \uac83\ucc98\ub7fc \uc368\ub193\uace0,<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"476\" height=\"36\" src=\"https:\/\/scrutineer.co.kr\/wordpress\/wp-content\/uploads\/2021\/02\/image-1.png\" alt=\"\" class=\"wp-image-371\" srcset=\"https:\/\/scrutineer.co.kr\/wordpress\/wp-content\/uploads\/2021\/02\/image-1.png 476w, https:\/\/scrutineer.co.kr\/wordpress\/wp-content\/uploads\/2021\/02\/image-1-300x23.png 300w\" sizes=\"auto, (max-width: 476px) 100vw, 476px\" \/><figcaption>\ub124&#8230;<\/figcaption><\/figure>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>\ubb50, \ud2c0\ub9b0 \ub9d0\uc740 \uc544\ub2c8\ub2e4. \ub300\ubd80\ubd84\uc758 \ucf54\ub4dc\ub294 &amp; \ub0b4\uac00 \uc77c\ud558\ub294 \uc2e4\ubb34\uc5d0\uc11c\uc758 \ucf54\ub4dc\ub294 \ud63c\uc790 \uc9dc\uc11c \ub3cc\ub9ac\ub294 \uc18c\uaddc\ubaa8\uc758 \uac04\ub2e8\ud55c \ucf54\ub4dc\uac00 \uc544\ub2c8\uace0, \uc5ec\ub7ec\uba85\uc774 \ud611\uc5c5\ud558\ub294 \ucf54\ub4dc\uc778\ub370&#8230; \ub300\ubd80\ubd84\uc758 \uc624\ub958\ub294 \uceec\ub809\uc158\uc5d0\uc11c \ud130\uc9c0\uace0(NPE\ub77c\ub358\uac00, ArrayIndexOutOfBounds\ub77c\ub358\uac00..\ub4f1\ub4f1&#8230;), \uadf8 \uc911 \uc808\ub300 \ub2e4\uc218\ub294 &#8216;\uc758\ub3c4\uce58 \uc54a\uc740 \uac12\uc758 \ubcc0\uacbd&#8217; \uc5d0 \uc758\ud574\uc11c \ud130\uc84c\uae30 \ub54c\ubb38\uc774\ub2e4. \ub530\ub77c\uc11c \uac1d\uccb4 \uc0dd\uc131\uc2dc immutable\ud558\uac8c \uc0dd\uc131\ub418\ub294\b \ud328\ub7ec\ub2e4\uc784 \uc790\uccb4\ub294 \uadc0\ucc2e\uc744\uc9c0\uc5b8\uc815&amp;\uac1d\uccb4\uc0dd\uc131\uc758 \uc624\ubc84\ud5e4\ub4dc\uac00 \ub354 \uc0dd\uae38\uc9c0\uc5b8\uc815 \uc2e0\ub8b0\uc131 \uce21\uba74\uc5d0\uc11c \ub354 \uc88b\uc740 \uc0c1\ud669\uc774\uae30\ub294 \ud558\ub2e4.<\/p><\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\" style=\"font-size:25px\">? \uadf8\ub7fc \uac19\uc740\uac70 \uc544\ub2d8?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">asList \uc640 of \ub294 \ubd84\uba85\ud55c \ucc28\uc774\uac00 \uc788\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">mutable vs immutable\uc758 \ucc28\uc774.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\ucc38\uace0\ud574 \ubcf4\uc790 : <a href=\"https:\/\/stackoverflow.com\/questions\/46579074\/what-is-the-difference-between-list-of-and-arrays-aslist\">https:\/\/stackoverflow.com\/questions\/46579074\/what-is-the-difference-between-list-of-and-arrays-aslist<\/a> <\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">List&lt;String> friends1 = Arrays.asList(\"John\",\"Tom\",\"Lee\"); \nList&lt;String> friends2 = List.of(\"John\",\"Tom\",\"Lee\");\n\nfriends1.set(0,\"Doe\"); \/\/ \uac00\ub2a5\nfriends2.set(0,\"Doe\"); \/\/ \ubd88\uac00\ub2a5. UnsupportedOperationException \ubc1c\uc0dd.\n\nfriends1.contains(null); \/\/ false \ub9ac\ud134. \uc775\uc149\uc158\uc774 \ub098\ub294 \ubc11\uc904\ubcf4\ub2e4 \uc774\uac8c \ub354 \uc88b\uc740 \uac83 \uac19\uc740\uac00?\u314b\u314b \u3134\u3134\ud568. \uc560\ucd08\uc5d0 List.of\ub85c \ub9ac\uc2a4\ud2b8\ub97c \uc0dd\uc131\ud558\uba74 \ud558\ub4f1 \uc4f8 \uc774\uc720\ub3c4, \uc4f8 \ud544\uc694\ub3c4, \uc368\uc11c\ub3c4 \uc548\ub418\ub294 \uc5c6\ub294 \uad6c\ubb38\uc784....\nfriends2.contains(null); \/\/ NPE \ub0a8. \uc544\uc2f8.\n\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\n\nList&lt;String> friends3 = Arrays.asList(\"John\",\"Tom\",\"Lee\", null);  \/\/\uac00\ub2a5. \uadfc\ub370 \ubcf4\uae30\ub9cc \ud574\ub3c4 \uc18c\ub984\ub3cb\ub294 \u314e\u3137\u3137\ud55c \ucf54\ub4dc.\nList&lt;String> friends4 = List.of(\"John\",\"Tom\",\"Lee\", null); \/\/ NPE \ub0a8. \uc544\uc2f8.\n\n\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\n\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc554\ud2bc mutable\ud55c \uac1d\uccb4\uac00 \uc774\ub807\uac8c \ubb34\uc12d\ub2e4. \uc4f0\uc9c0\ub9d0\uc790&#8230;(8\uc774\uc0c1\uc5d0\uc11c\ub3c4 \uba87\ubc88 \uc4f4 \uc801\uc774 \uc788\ub294 \uae30\uc5b5\uc774 \ubd88\ud604\ub4ef \ub09c\ub2e4&#8230;\uc4f0\uc9c0 \ub9d0\uc544\uc57c\uc9c0..)<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" style=\"font-size:25px\">\uc9d1\ud569, \ub9f5 \ud329\ud1a0\ub9ac<\/h2>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\/\/\uc9d1\ud569 \ud329\ud1a0\ub9ac \uc0ac\uc6a9\ubc95.\nSet&lt;String> friends = Set.of(\"John\", \"Tom\", \"Lee\");\nSet&lt;String> friends = Set.of(\"John\", \"Tom\", \"Lee\", \"Lee\"); \/\/ IllegalArgumentException \ubc1c\uc0dd.\n\n\/\/\ub9f5 \ud329\ud1a0\ub9ac \uc0ac\uc6a9\ubc95.\nMap&lt;String,Integer> ageOfFriends = \n    Map.of(\n        \"John\", 20,\n        \"Tom\", 30,\n        \"Lee\", 40,\n    );\n\nMap&lt;String, Integer> ageOfFriends2 = \n    Map.ofEntries(\n        entry(\"John\", 20),\n        entry(\"Tom\",  30),\n        entry(\"Lee\",  40),\n    );\n<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\ub9ac\uc2a4\ud2b8 \ucc98\ub9ac(removeIf, replaceAll)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\ub808\uac70\uc2dc \uc790\ubc14 \uae30\uc900, \ub9ac\uc2a4\ud2b8 \uceec\ub809\uc158\uc5d0\uc11c \uc694\uc18c\ub97c \ubcc0\uacbd\ud558\uace0\uc790 \ud558\ub294 \uacbd\uc6b0\uac00 \uc788\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">List&lt;Transaction> \uc5d0\uc11c \uc22b\uc790\ub85c \uc2dc\uc791\ub418\ub294 \ucc38\uc870\ucf54\ub4dc\ub97c \uc0ad\uc81c\ud558\ub294 \ucf54\ub4dc\ub97c \uc791\uc131\ud55c\ub2e4\uace0 \uac00\uc815\ud574 \ubcf4\uc790.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">for (Transaction elem : transactions) {\n  if (Character.isDigit(transaction.getReferenceCode().charAt(0))) {\n    transactions.remove(elem);\n  }\n}<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc815\uc0c1\uc801\uc73c\ub85c \uc798 \ub3d9\uc791\ud560\uae4c? transactions \uc5d0\uc11c \uc22b\uc790\ub85c \uc2dc\uc791\ub418\ub294 \ucc38\uc870\ucf54\ub4dc\uac00 \uc544\uc608 \uc5c6\uc9c0 \uc54a\ub294 \uc774\uc0c1, \uc2ed\uc911\ud314\uad6c \uc775\uc149\uc158\uc774 \ub09c\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">for (Iterator&lt;Transaction> iterator = transactions.iterator(); iterator.hasNext(); ) {\n  Transaction transaction = iterator.next();\n  if (Character.isDigit(transaction.getReferenceCode(). charAt(0))) {\n    transactions.remove(transaction);\n  }\n}<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">for-each\ub97c \ud480\uba74 \uc774 for\ubb38\uc73c\ub85c \ud574\uc11d\ud560 \uc218 \uc788\ub294\ub370,<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">iterator\uac00 for\ubb38 \uc9c4\uc785 \uc2dc transactions \ub97c \ucd5c\ucd08 1\ubc88\ub9cc \ucc38\uc870\ud558\uace0, \uadf8 \uc774\ud6c4\uc5d0 transactions \uac00 \ubcc0\uacbd\ub418\uba74\uc11c \ub450\uac1c\uc758 \uacb0\uacfc\uac00 \ub3d9\uae30\ud654 \ub418\uc9c0 \uc54a\uae30 \ub584\ubb38\uc774\ub2e4.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>\ud480\uc5b4\uc11c \ub9d0\ud574\ubcf4\uba74, \ucd5c\ucd08 transactions.iterator(); \ub97c \ucc38\uc870\ud558\uba74\uc11c \uc22b\uc790\uac00 \uc874\uc7ac\ud558\ub294 \ucc38\uc870\ucf54\ub4dc\ub97c \uac16\uace0 \uc788\ub2e4\uac00, if\ub97c \uac70\uccd0 4\ubc88 \ub77c\uc778\uc744 \uc2e4\ud589\ud55c \ud6c4\uc5d0, transactions\ub294 \uc6d0\uc18c 1\uac1c\uac00 remove \ub418\uc5c8\uc9c0\ub9cc, iterator\ub294 \ucd5c\ucd08\uc5d0 1\ubc88\ub9cc transactions\ub97c \ucc38\uc870\ud558\uc600\uc73c\ubbc0\ub85c&#8230; &#8216;\uc544\uc9c1\ub3c4 4\ubc88 \ub77c\uc778\uc774 \uc2e4\ud589\ub418\uae30 \uc804\uc778 \ucd5c\ucd08\uc758 transactions\uc758 iterator\ub97c \uac16\uace0 \uc788\ub294&#8217; \uc0c1\ud669\uc774\ub77c\ub294 \uac83\uc784..\u3147\u3147<\/p><\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">\ub530\ub77c\uc11c \uc774 \ubcf5\uc7a1\ubcf5\uc7a1\ud55c \uc0c1\ud669\uc744 \ud574\uacb0\ud558\uace0 \uc2f6\uc73c\uba74&#8230;.\ud3b8-\uc548 \ud558\uac8c removeIf\ub97c \uc0ac\uc6a9\ud558\uba74 \ub41c\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">transactions.removeIf(transaction -> Character.isDigit(transaction.getReferenceCode().charAt(0))); \/\/ \ud504\ub9ac\ub514\ucf00\uc774\ud2b8 \uc0ac\uc6a9!<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\ub9ac\uc2a4\ud2b8\uc5d0 \uc788\ub294 \ubaa8\ub4e0 \uc694\uc18c\ub97c replaceAll \uc744 \ud1b5\ud574 \ubcc0\uacbd\ud560 \uc218\ub3c4 \uc788\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uc2a4\ud2b8\ub9bc\uc744 \uc774\uc6a9\ud558\uc5ec .stream().map()  \ucc98\ub9ac\ub97c \ud574\ub3c4 \ub418\uc9c0\ub9cc, stream\uc744 \uc774\uc6a9\ud558\ub294 \uc21c\uac04 &#8216;\uc0c8\ub85c\uc6b4 \uceec\ub809\uc158&#8217; \uc774 \uc0dd\uae30\uac8c \ub418\ub294 \ud604\uc0c1\uc774 \ubc1c\uc0dd\ud558\ubbc0\ub85c(\uae30\uc874 \uceec\ub809\uc158\uc740-\uc0ac\uc6a9\ud558\uc9c0 \uc54a\ub294\ub2e4\uba74- \uac00\ube44\uc9c0 \uceec\ub809\ud305 \ub300\uc0c1\uc774 \ub418\uc5b4 \uc2dc\uc2a4\ud15c\uc758 \uc131\ub2a5\ubd80\ub2f4\uc744 \uc8fc\ub294 \ud6a8\uacfc\ub294 \ub364) \ub418\ub3c4\ub85d\uc774\uba74 \uc9c0\uc591\ud558\uc790.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">code.replaceAll(code -> Character.toUpperCase(code.charAt(0))); \/\/ \ud504\ub9ac\ub514\ucf00\uc774\ud2b8 \uc0ac\uc6a9!<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\ub9f5 \ucc98\ub9ac(forEach, getOrDefault)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\ub9f5\uc744 \uc21c\ud68c\ud558\uba74\uc11c \ubb34\uc5b8\uac00\ub97c \ud558\ub294 \uacbd\uc6b0&#8230;. \ub808\uac70\uc2dc \uc790\ubc14\ub294 \ub2e4\uc74c\uacfc \uac19\uc774 \uad6c\ud604\ud55c\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">for(Map.Entry&lt;String,Integer> entry : ageOfFriends.entrySet()) {\n  entry.getKey();\n  entry.getValue();\n}<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uadf9\ud610. \ud558\uc9c0\ub9cc \ubaa8\ub358 \uc790\ubc14\uc758 forEach()\ub97c \uc0ac\uc6a9\ud558\uba74?<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">ageOfFriends.forEach((name, age) -> sysout(friend + age));<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\ud3b8-\uc548<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\ub9f5\uc758 \ud0a4\ub97c \uc870\ud68c\ud558\uc5ec \uc694\uc18c\ub97c \ubc1b\uace0\uc790 \ud560 \ub54c&#8230;. \ub808\uac70\uc2dc \uc790\ubc14\ub294 \ub2e4\uc74c\uacfc \uac19\uc774 \ucc98\ub9ac\ud55c\ub2e4<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">Integer johnAge = ageOfFriends.get(\"Johnnnnnnn\");\nif (johnAge == null) {  \/\/ \uc88b\uc73c\ub098 \uc2eb\uc73c\ub098 \ud544\uc218......\n  johnAge = 0;\n  sysout(\"\uc874\uc774 \uc5c6\uc5b4.\");\n}<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774\ub807\ub4ef null\uc774 \ubc1c\uc0dd\ud560 \uc218 \uc788\ub294 \ubd80\ubd84\uc5d0 \ub300\ud574 \ucc98\ub9ac\ub97c \ud574\uc57c \ud55c\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\ud558\uc9c0\ub9cc \ubaa8\ub358 \uc790\ubc14\uc758 getOrDefault() \ub97c \uc0ac\uc6a9\ud558\uba74?<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">Integer johnAge = ageOfFriends.getOrDefault(\"john12321321\", 0);<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774\ub807\uac8c \ubcc4\ub3c4\uc758 \uccb4\ud06c \uad6c\ubb38 \ud544\uc694 \uc5c6\uc774 \ud3b8-\uc548 \ud558\uac8c default \uac12\uc744 \uc904 \uc218 \uc788\ub2e4.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\uacc4\uc0b0\ud328\ud134,\uad50\uccb4\ud328\ud134,\uc0ad\uc81c\ud328\ud134<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\uc0ac\uc2e4 \uc77d\uc5b4\ubcf4\ub2c8 \uac1c\ub150\uc801\uc73c\ub85c \uadf8\ub807\uac8c \uc911\uc694\ud55c \ubd80\ubd84\uc740 \uc544\ub2cc \uac83 \uac19\uace0&#8230;.. \uc77c\uc885\uc758 &#8216;\uae30\ubc95&#8217;\uc744 \uc18c\uac1c\ud574 \ubcf4\ub294 \uac83\uc774\ub2c8 \uac04\ub2e8\ud558\uac8c&#8230;. \ucf54\ub4dc\ub85c \ud55c\ubc88 \uc4f1 \ud6d1\uc5b4\ubcf8\ub2e4.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" style=\"font-size:25px\">\uacc4\uc0b0\ud328\ud134<\/h2>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\/\/ forEach \ucc98\ub7fc '\ubb3b\uc9c0\ub9c8. \ubb34\uc870\uac74 \ub2e4 \uacc4\uc0b0' \ud560 \uac8c \uc544\ub2c8\ub77c, \ubbf8\ucc98 \uacc4\uc0b0\ub418\uc9c0 \ubabb\ud55c \uac83\ub4e4\uc5d0 \ub300\ud574\uc11c\ub9cc \uacc4\uc0b0\ud558\uace0\uc790 \ud560 \ub54c\n\nlines.forEach(line -> \n  dataToHash.computeIfAbsent(line, this::calculateDigest);\n);<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\ubb50 \uc774\ub7f0\uc2dd\uc73c\ub85c \uc870\uae08 &#8216;\uc2a4\ub9c8\ud2b8&#8217; \ud558\uac8c \uacc4\uc0b0\ud560 \uc218 \uc788\ub2e4.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>computeIfAbsent : \uccab\ubc88\uc9f8 argument\ub85c \ub4e4\uc5b4\uc624\ub294 \ud0a4\uac12\uc774 \uc5c6\uc73c\uba74 \uacc4\uc0b0(\ub450\ubc88\uc9f8 argument)\uc2dd \uc218\ud589.<\/li><li>computeIfPresent : \uadf8 \ubc18\ub300&#8230;.<\/li><li>compute : \uc81c\uacf5\ub41c \ud0a4\ub85c \uc0c8 \uac12\uc744 \uacc4\uc0b0<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" style=\"font-size:25px\">\uc0ad\uc81c\ud328\ud134<\/h2>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">myMap.remove(key); \/\/\ubb3b\uc9c0\ub9c8 \uc0ad\uc81c.\nmyMap.remove(key,value); \/\/value\uae4c\uc9c0 \uc77c\uce58 \ud574\uc57c \uc0ad\uc81c\ud568. 'remove if value equals' \uc815\ub3c4\ub77c\uace0 \uc774\ud574\ud558\uba74 \ub418\uaca0\ub2e4<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" style=\"font-size:25px\">\uad50\uccb4\ud328\ud134<\/h2>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">favouriteMovies.replaceAll((friend, movie) => movie.toUpperCase());<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\uba38\uc9d5<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\uc911\ubcf5\ub41c \ud0a4\uac00 \uc5c6\ub2e4\ub294 \uac83\uc744 \uc54c\uace0 \uc788\ub294 \uc0c1\ud669\uc774\ub77c\uba74, aMap.putAll(bMap); \uacfc \uac19\uc740 \ubc29\ubc95\uc73c\ub85c \uba38\uc9d5\uc744 \ud560 \uc218 \uc788\ub2e4. \uc911\ubcf5\ub41c \ud0a4\uac00 \uc5c6\ub294 \uacbd\uc6b0\uc5d4, forEach \uc640 merge \ub97c \ud1b5\ud574 \ucda9\ub3cc\uc744 \ud574\uacb0\ud560 \uc218 \uc788\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">Map&lt;String,String> everyone = new HashMap&lt;>(family);\nfriends.forEach((k,v) -> everyone.merge(k,v, (movie1, movie2) -> movie1 + \" &amp; \" + movie2)); \/\/ \uacb9\uce58\ub294 key\uc5d0 \ub300\ud574, \uc138\ubc88\uc9f8 argument \ud391\uc158\uc744 \uc0ac\uc6a9\ud558\uc5ec \ucc98\ub9ac. \uc774 \uacbd\uc6b0\ub294 1,2\ubc88 \uc601\ud654\ub97c \ub354\ud558\ub294 \ub3d9\uc791\uc73c\ub85c \uc911\ubcf5\uc744 \ucc98\ub9ac\ud568<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\ub9c8\uce58\uba70(\uc815\ub9ac)<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>\ubaa8\ub358 \uc790\ubc14\ub294 immutable\ud55c \uac1d\uccb4\ub97c \uc0dd\uc131\ud558\uac8c \ud574 \uc8fc\ub294 \uceec\ub809\uc158 \ud329\ud1a0\ub9ac\uac00 \uc788\ub2e4.<ul><li>List.of<\/li><li>Set.of<\/li><li>Map.of<\/li><li>Map.ofEntries<\/li><\/ul><\/li><li>List \uc778\ud130\ud398\uc774\uc2a4\ub294 removeIf,replaceAll,sort \uc138\uac00\uc9c0 \ub514\ud3f4\ud2b8 \uba54\uc18c\ub4dc\ub97c \uc9c0\uc6d0\ud55c\ub2e4.<\/li><li>Set \uc778\ud130\ud398\uc774\uc2a4\ub294 removeIf \ub514\ud3f4\ud2b8 \uba54\uc18c\ub4dc\ub97c \uc9c0\uc6d0\ud55c\ub2e4.<\/li><li>Map\uc740 \uc880 \ub354 \ub2e4\uc591\ud558\uac8c \uc9c0\uc6d0\ud574 \uc900\ub2e4.<ul><li>computeIfAbsent, computeIfPresent, compute<\/li><li>remove<\/li><li>replaceAll<\/li><li>merge<\/li><\/ul><\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>8\uc7a5 \uccab\ubb38\uc7a5. \uceec\ub809\uc158 API\uac00 \uc790\ubc14 \uac1c\ubc1c\uc790\uc758 \uc0b6\uc744 \uc678\ub86d\uc9c0 \uc54a\uac8c(&#8230;.) \ud574 \uc8fc\uc5c8\uc73c\ub098, \uadf9\ud610\uc778\uac74 \uc5ec\uc804\ud558\ub2e4. \uc608\uc0c1\uce58 \ubabb\ud55c \uc704\uce58\uc5d0\uc11c \uc5d0\ub7ec\ub3c4 \ubfdc\ubfdc \ub0b4\ubc49\uace0, \uc0ac\uc6a9\ud558\ub294 \uac83 \uc790\uccb4\ub3c4 \uc131\uac00\uc2dc\ub2e4. \ud558\uc9c0\ub9cc \ubaa8\ub358 \uc790\ubc14\ub85c \ub3cc\uc785\ud558\uba74\uc11c(8,9) \uc774 \uceec\ub809\uc158 API\ub97c \uc0ac\uc6a9\ud558\uae30 \uc870\uae08 \ub354 \ud3b8\ud558\uac8c \ub9ce\uc740 \uac1c\uc120\uc774 \ub418\uc5c8\ub2e4. \ub9ac\uc2a4\ud2b8(List) \uc9d1\ud569(Set) \ub9f5(Map) \uc774 \ub300\ud45c\uc801\uc778 \uceec\ub809\uc158\ub4e4\uc744 \ub9c8\uc74c\uaecf manipulate \ud560 \uc218 \uc788\ub3c4\ub85d \ud574 \uc8fc\ub294 \uac83\ub4e4\uc5d0 \ub300\ud574 \uc0b4\ud3b4\ubcf4\uae30\ub85c \ud558\uc790 \uceec\ub809\uc158 &#8230; <a title=\"\ubaa8\ub358 \uc790\ubc14 \uc778 \uc561\uc158 8\uc7a5\" class=\"read-more\" href=\"https:\/\/scrutineer.co.kr\/wordpress\/index.php\/2021\/02\/04\/%eb%aa%a8%eb%8d%98-%ec%9e%90%eb%b0%94-%ec%9d%b8-%ec%95%a1%ec%85%98-8%ec%9e%a5\/\" aria-label=\"Read more about \ubaa8\ub358 \uc790\ubc14 \uc778 \uc561\uc158 8\uc7a5\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-369","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/scrutineer.co.kr\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/369","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/scrutineer.co.kr\/wordpress\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/scrutineer.co.kr\/wordpress\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/scrutineer.co.kr\/wordpress\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/scrutineer.co.kr\/wordpress\/index.php\/wp-json\/wp\/v2\/comments?post=369"}],"version-history":[{"count":6,"href":"https:\/\/scrutineer.co.kr\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/369\/revisions"}],"predecessor-version":[{"id":379,"href":"https:\/\/scrutineer.co.kr\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/369\/revisions\/379"}],"wp:attachment":[{"href":"https:\/\/scrutineer.co.kr\/wordpress\/index.php\/wp-json\/wp\/v2\/media?parent=369"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/scrutineer.co.kr\/wordpress\/index.php\/wp-json\/wp\/v2\/categories?post=369"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/scrutineer.co.kr\/wordpress\/index.php\/wp-json\/wp\/v2\/tags?post=369"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}