๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
JAVA ๊ฐœ๋ฐœ์ž๊ฐ€ ์•Œ์•„์•ผํ•  String ํด๋ž˜์Šค - 2ํŽธ ๋ณธ ํฌ์ŠคํŒ…์—์„œ๋Š” ์ง€๋‚œ ํฌ์ŠคํŒ…์— ์ด์–ด์„œ JAVA ๊ฐœ๋ฐœ์ž๊ฐ€ ์•Œ์•„์•ผํ•˜๋Š” String ํด๋ž˜์Šค์— ๋Œ€ํ•œ ์ฃผ์š” ๋‚ด์šฉ๋“ค์„ ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. String, StringBuilder, StringBuffer์˜ ํŠน์ง•๊ณผ ์ฐจ์ด์ ์— ๋Œ€ํ•ด ์ฃผ๋กœ ๋‹ค๋ฃน๋‹ˆ๋‹ค. ๋ชฉ์ฐจ String, StringBuilder, StringBuffer - immutable(๋ถˆ๋ณ€) VS mutable(๊ฐ€๋ณ€) StringBuilder VS StringBuffer String, StringBuilder, StringBuffer - immutable(๋ถˆ๋ณ€) VS mutable(๊ฐ€๋ณ€) String, StringBuilder, StringBuffer๋Š” ๋ชจ๋‘ ๋ฌธ์ž์—ด์„ ๋‹ค๋ฃจ๋Š” ํด๋ž˜์Šค์ž…๋‹ˆ๋‹ค. ๊ฐ ํด๋ž˜์Šค๋Š” ๊ณ ์œ ํ•œ ํŠน์„ฑ์ด ์žˆ์–ด ์ด๋ฅผ ์•Œ๊ณ  ์ ํ•ฉํ•œ ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. S.. 2023. 2. 18.
JAVA ๊ฐœ๋ฐœ์ž๊ฐ€ ์•Œ์•„์•ผํ•  String ํด๋ž˜์Šค - 1ํŽธ ๋ณธ ํฌ์ŠคํŒ…์—์„œ๋Š” JAVA ๊ฐœ๋ฐœ์ž๊ฐ€ ์•Œ์•„์•ผํ•˜๋Š” String ํด๋ž˜์Šค์— ๋Œ€ํ•œ ์ฃผ์š” ๋‚ด์šฉ๋“ค์„ ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋ชฉ์ฐจ ๋ฌธ์ž์—ด ๋ถ™์ด๊ธฐ - concat() VS '+' ์—ฐ์‚ฐ์ž ๋ถˆ๋ณ€(immutable) ๋ฌธ์ž์—ด ๋น„๊ต - == VS equals() String ๊ฐ์ฒด ์ƒ์„ฑ - ๋ฆฌํ„ฐ๋Ÿด VS new ์—ฐ์‚ฐ์ž ๋ฌธ์ž์—ด ๋ถ™์ด๊ธฐ - concat() VS '+' ์—ฐ์‚ฐ์ž concat() ๋ฉ”์†Œ๋“œ์™€ + ์—ฐ์‚ฐ์ž๋Š” ๋‘˜ ๋‹ค ๋‘ ๊ฐœ์˜ ๋ฌธ์ž์—ด์„ ์ด์–ด๋ถ™์—ฌ ์ƒˆ๋กœ์šด ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ, ๋‘ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์—๋Š” ์ฐจ์ด์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. concat() ๋ฉ”์†Œ๋“œ๋Š” ํ˜ธ์ถœํ•˜๋Š” ๋ฌธ์ž์—ด ๋’ค์— ์ „๋‹ฌ๋œ ๋ฌธ์ž์—ด์„ ์ด์–ด๋ถ™์ž…๋‹ˆ๋‹ค. + ์—ฐ์‚ฐ์ž๋Š” ์™ผ์ชฝ ๋ฌธ์ž์—ด๊ณผ ์˜ค๋ฅธ์ชฝ ๋ฌธ์ž์—ด์„ ์ด์–ด๋ถ™์ž…๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ๊ฐ„๋‹จํ•œ ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค. String str1 = "Hello"; String str2 .. 2023. 2. 17.
JAVA์—์„œ String์„ Null Safeํ•˜๊ฒŒ ๋น„๊ตํ•˜๊ธฐ Nullableํ•œ ๋‘ ๊ฐœ์˜ String์ด equalํ•œ์ง€๋ฅผ null safeํ•˜๊ฒŒ ๋น„๊ตํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด์ž. String#equals ๋‘ String์ด null์ด ์•„๋‹ˆ๋ฉด String ํด๋ž˜์Šค์˜ ์ธ์Šคํ„ด์Šค ๋ฉ”์†Œ๋“œ equals๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค. @Test void test0() { String s1 = "hello"; String s2 = "hello"; assertThat(s1.equals(s2)).isTrue(); s2 = "world"; assertThat(s1.equals(s2)).isFalse(); } @Test void test1() { String s1 = null; String s2 = null; assertThatThrownBy(() -> s1.equals(s2)).isInstanceOf(NullP.. 2021. 8. 14.