{"id":2464,"date":"2016-10-15T02:13:22","date_gmt":"2016-10-15T02:13:22","guid":{"rendered":"http:\/\/www.gisdeveloper.co.kr\/?p=2464"},"modified":"2016-10-15T02:13:22","modified_gmt":"2016-10-15T02:13:22","slug":"golang-%ec%97%b4%ea%b1%b0%ed%98%95enum","status":"publish","type":"post","link":"http:\/\/www.gisdeveloper.co.kr\/?p=2464","title":{"rendered":"[Golang] \uc5f4\uac70\ud615(enum)"},"content":{"rendered":"<p>\uace0\ub294 \uc5f4\uac70\ud615 \ud0c0\uc785\uc744 \uc9c0\uc6d0\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4\ub9cc, \uadf8 \uc5f4\uac70\ud615\uc758 \ubaa9\uc801\uc744 \ub2ec\uc131\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc544\ub798\uc758 \ucf54\ub4dc\ub294 12\uac1c\uc758 \ub2ec(Month)\uc5d0 \ub300\ud55c \uace0 \uc5b8\uc5b4\uc801 \uc5f4\uac70\ud615 \ud0c0\uc785\uc758 \uc815\uc758\uc785\ub2c8\ub2e4.<\/p>\n<pre>\ntype Month int\n\nconst (\n\tJanuary Month = 1 + iota\n\tFebruary\n\tMarch\n\tApril\n\tMay\n\tJune\n\tJuly\n\tAugust\n\tSeptember\n\tOctober\n\tNovember\n\tDecember\n)\n\nvar months = [...]string{\n\t\"January\",\n\t\"February\",\n\t\"March\",\n\t\"April\",\n\t\"May\",\n\t\"June\",\n\t\"July\",\n\t\"August\",\n\t\"September\",\n\t\"October\",\n\t\"November\",\n\t\"December\",\n}\n\nfunc (m Month) String() string { return months[(m-1)%12] }\n<\/pre>\n<p>\uc5b8\uc5b4\uc5d0\uc11c \uadfc\ubcf8\uc801\uc73c\ub85c \uc5f4\uac70\ud615\uc744 \uc9c0\uc6d0\ud558\uc9c0 \uc54a\ub2e4\ubcf4\ub2c8, \ub2e4\uc18c \ubd88\ud3b8\ud558\uace0 \uc5b4\uc0c9\ud558\uae30\ub294 \ud569\ub2c8\ub2e4. \uc8fc\uc9c0\ud574\uc57c \ud560 \ucf54\ub4dc\ub9cc\uc744 \uc0b4\ud3b4\ubcf4\uba74, 4\ubc88\uc5d0\uc11c \uc0c1\uc218\ud615 \uac12 \uc815\uc758\uc2dc iota\ub294 \uadf8 \uc774\ud6c4\uc758 \uc0c1\uc218\uac12\ub4e4\uc744 1\uc529 \ub354\ud574 \uc815\uc758\ub418\uc5b4\uc9c0\ub3c4\ub85d \uc9c0\uc815\ud569\ub2c8\ub2e4. \uc989, January\uc5d0 1\uc758 \uac12\uc73c\ub85c \uc815\uc758\ub418\uace0, \uadf8 \ub2e4\uc74c\uc778 February\ub294 2\uc758 \uac12\uc744 \uc790\ub3d9\uc73c\ub85c \uac16\ub3c4\ub85d\ud55c\ub2e4\ub294 \uac83\uc785\ub2c8\ub2e4. \uadf8\ub9ac\uace0 33\ubc88\uc740 Month\ub97c enum \ud0c0\uc785\uc73c\ub85c\uc368 \uadf8 \ubb38\uc790\uc5f4 \uba85\uce6d\uc744 \uac16\ub3c4\ub85d \ub9e4\uc11c\ub4dc\ub97c \ucd94\uac00\ud574 \uc8fc\ub294 \uac83\uc785\ub2c8\ub2e4. \ub2ec\uc758 \uc21c\ud658\uc774\ub77c\ub294 \uac1c\ub150\uc744 \uc704\ud574 12\ub85c \ub098\ub208 \ub098\uba38\uc9c0\uac12\uc744 \uc778\ub371\uc2a4 \uac12\uc73c\ub85c \ucde8\ud588\uc2b5\ub2c8\ub2e4. \ud65c\uc6a9\ud558\ub294 \ucf54\ub4dc\ub294 \uc544\ub798\uc640 \uac19\uc2b5\ub2c8\ub2e4.<\/p>\n<pre>\nfunc main() {\n\tmonth := December\n\n\tif month == December {\n\t\tfmt.Println(\"Found a December\")\n\t}\n\n\tmonth = month + Month(2)\n\tfmt.Println(month)\n\n\tmonth = January + Month(2)\n\tfmt.Println(month)\n\n\tmonth++\n\tfmt.Println(month)\n\n\tday := 34\n\tmonth = Month(day % 31)\n\tfmt.Println(month)\n\n\tval := int(month) + 4\n\tfmt.Println(val)\n\n\tmonth = Month(val) + 1\n\tfmt.Println(month)\n}\n<\/pre>\n<p>\uc6b0\ub9ac\uac00 \uc6d0\ud558\ub294 enum \ud0c0\uc785\uc758 \uc815\uc758\ub300\ub85c \uadf8 \uacb0\uacfc\uac12\uc744 \uadf8\ub300\ub85c \uc598\uc0c1\ud560 \uc218 \uc788\ub294\ub370\uc694. \uacb0\uacfc\ub294 \uc544\ub798\uc640 \uac19\uc2b5\ub2c8\ub2e4.<\/p>\n<pre>\nFound a December\nFebruary\nMarch\nApril\nMarch\n7\nAugust\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\uace0\ub294 \uc5f4\uac70\ud615 \ud0c0\uc785\uc744 \uc9c0\uc6d0\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4\ub9cc, \uadf8 \uc5f4\uac70\ud615\uc758 \ubaa9\uc801\uc744 \ub2ec\uc131\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc544\ub798\uc758 \ucf54\ub4dc\ub294 12\uac1c\uc758 \ub2ec(Month)\uc5d0 \ub300\ud55c \uace0 \uc5b8\uc5b4\uc801 \uc5f4\uac70\ud615 \ud0c0\uc785\uc758 \uc815\uc758\uc785\ub2c8\ub2e4. type Month int const ( January Month = 1 + iota February March April May June July August September October November December ) var months = [&#8230;]string{ &#8220;January&#8221;, &#8220;February&#8221;, &#8220;March&#8221;, &#8220;April&#8221;, &#8220;May&#8221;, &#8220;June&#8221;, &#8220;July&#8221;, &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/www.gisdeveloper.co.kr\/?p=2464\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;[Golang] \uc5f4\uac70\ud615(enum)&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[113],"tags":[111],"class_list":["post-2464","post","type-post","status-publish","format-standard","hentry","category-golang","tag-golang"],"_links":{"self":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/2464","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2464"}],"version-history":[{"count":0,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/2464\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2464"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2464"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2464"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}