2026.07.21 ์์ฑ(if-else vs switch ๊ทธ๋ฆฌ๊ณ String.replace() ์ฃผ์์ )
2026.08.09 ๋ฐฐํฌ
ใ ใ ,, 1๋ ๋ฐ ๋ง์ ์๋ฐ ํ๋ก์ ํธ ๋ณต๊ท๋ผ๋.. ๋ด๋ ์ ๋๋ ๋ ๋ญ ํ๊ณ ์์๊น
-
1. ์ฌ์ฉ ์กฐ๊ฑด์ด 2๊ฐ์ผ ๋: if-else vs switch - ๋ญ๊ฐ ๋ ํจ์จ์ ์ผ๊น
switch๋ฌธ์ ๋ณด์ฌ์คฌ๋๋ฐ ์กฐ๊ฑด์ด ๋ฑ 2๊ฐ์ผ ๋๋ if-else๊ฐ ํจ์ฌ ๋ซ๋ค๋ ์ฐจ์ฅ๋์ ๋ง์์ ๋ฃ๊ณ ์ฐพ์๋ดค๋ค.
์ฑ๋ฅ ๊ด์ ์์ ๋ดค์ ๋:
์์ฆ ์๋ฐ(12-21)์์ switch๊ฐ JIT ์ต์ ํ ๊ณผ์ ์ ๊ฑฐ์น๋ฉด์ ๋ ํจ์จ์ ์ด๋ผ๊ณ ํ๋ค
๊ทผ๋ฐ ์กฐ๊ฑด์ด ๋ฑ 2๊ฐ์ผ ๋๋ if-else๋ ์ผํญ ์ฐ์ฐ์๊ฐ ๋ฐ์ดํธ์ฝ๋ ์์ค์์ ์ง๊ด์ ์ด๊ธฐ๋ ํ๊ณ ๋ถ๊ธฐ ์์ธก, ์ฝ๋ ์๋ ๋ฉด์์ ๋ ๊น๋ํ๊ธด ํจ
2. ์นํ๋ก์ง: if-else vs String.replace()
์นํ๋ก์ง์ if else๋ณด๋จ replace๊ฐ ๋ ๊ฐ๊ฒฐํ๋ค๊ณ ํด์ ์ฐพ์๋ดค๋ค
replace ๋์ ์๋ฆฌ
replace๋ (1)๋ฌธ์์ด ์ ์ฒด์์ ํน์ ํจํด์ ์ฐพ์ (2)๋ฐ๊พธ๋ ์ฐ์ฐ์ด๋ค
๋ง์ฝ ๋ฌธ์์ด a ์ ์ฒด์ ์ผ์ ํจํด์ ๋ฐ๊พธ๋๊ฒ ๋ชฉ์ ์ด๋ฉด replace๊ฐ ํจ์ฌ ๋ ๊ฐ๊ฒฐํ๊ณ ์ข๋ค.
String a = "";
if (.. equalse(b)) { a = "1";}
else if .. {a = "2";}
๋ณด๋ค๋
String a = b.replace(..).replace(..);
๊ทผ๋ฐ replace ์ฐ์ฐ์ ์ฐ์์ผ๋ก ์ฒด์ด๋ํ๋ฉด ํ ๋๋ง๋ค ์๋ก์ด String๊ฐ์ฒด๊ฐ ์์ฑ๋๋ค.
๋ฐ๋ผ์ ๋์ฉ๋ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ์์ ๋ฉ๋ชจ๋ฆฌ/์ฑ๋ฅ ๋น์ฉ์ด ์ฆ๊ฐํ ์ ์๋ค๋ ์ ์ ์๊ณ ์ฐ๋ฉด ์ข๋ค.
๋ฐ๋๋ก ๋จ์ 1:1 ๋งคํ(์: codeA -> 1, codeB -> 2)์ด ๋ชฉ์ ์ด๋ฉด Map์ด ๋ ๊ด๋ฆฌํ๊ธฐ ์ข๋ค(+ enum)