Java ๋ฌธ์์ด ์ฐ๊ฒฐ์ ๋ ์ด์์ ๋ฌธ์์ด์ ๊ฒฐํฉํ๊ณ ์ ๋ฌธ์์ด์ ๋ฐํํ๋ ์์
์
๋๋ค. ๋ํ ์ฐ๊ฒฐ ์ฐ์ฐ์ ์ฌ์ฉํ์ฌ ์ ํ์ ๋ฌธ์์ด๋ก ์บ์คํธํ ์ ์์ต๋๋ค. ๋ ๊ฐ์ง ๋ฐฉ๋ฒ์ผ๋ก Java์์ ๋ฌธ์์ด์ ์ฐ๊ฒฐํ ์ ์์ต๋๋ค.
๋์ผํ ์์
์ concat() ๋ฉ์๋๋ฅผ ์ ์ฉํ๋ฉด NullPointerException ์ด ๋ฐ์ํฉ๋๋ค .
concat() ๋ฉ์๋
Concat() ๋ฉ์๋๋ ์ฃผ์ด์ง ๋ฌธ์์ด์ ๋์ ์ง์ ๋ ๋ฌธ์์ด์ ์ถ๊ฐํ ๋ค์ ๋ฐํํ๊ณ ํ์ฑ๋ ์ ๋ฌธ์์ด์ ๋ฐํํฉ๋๋ค. ๋ฌผ๋ก concat() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ์ธ ๊ฐ ์ด์์ ๋ฌธ์์ด์ ๊ฒฐํฉํ ์ ์์ต๋๋ค.concat() ๋ฉ์๋ ์๊ทธ๋์ฒ
public String concat(String str)
์ด ๋ฉ์๋๋ ํ์ฌ ๋ฌธ์์ด์ ๋์์ ๋ฌธ์์ด str์ ์ฐ๊ฒฐํฉ๋๋ค. ์๋ฅผ ๋ค์ด:
String s1 = โHello โ;
s1.concat("World")
์ ๋ฌธ์์ด "Hello World"๋ฅผ ๋ฐํํฉ๋๋ค.
Concat() ๋ฉ์๋ ์์
์ด๊ธฐํ ํ ๋ ๊ฐ์ ๋ฌธ์์ด์ ์ฐ๊ฒฐํ ๋ค์ ๋ ๋ง์ ๋ฌธ์์ด์ ์ฐ๊ฒฐํด ๋ณด๊ฒ ์ต๋๋ค. ๋ ํ๋์ ํฅ๋ฏธ๋ก์ด ์: ์ธ์์ ๋ฐ๋ผ ๋ค๋ฅธ ๋ฉ์์ง๋ฅผ ๋ฐํํ๋ ๋ฉ์๋๋ฅผ ๋ง๋ค ๊ฒ์ ๋๋ค.public class ConcatTest {
public static void main(String[] args) {
//String concat with concat() method
String string1 = "I learn ";
String string2 = "concatenation in Java";
//here we use concat() method to join the two strings above
String result = string1.concat(string2);
System.out.println(result);
//concat() method to join 4 strings
String myWebSite = "Code".concat("Gym").concat(".cc").concat("/quest");
System.out.println(myWebSite); // here we've got "CodeGym.cc/quest"
System.out.println(myMessage(true));
System.out.println(myMessage(false));
}
private static String myMessage(boolean b) { //concat() method with selection statement
return "I have".concat(b ? " " : "n't ").concat("got it");
}
}
์ถ๋ ฅ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
Java CodeGym.cc/quest์์ ์ฐ๊ฒฐ์ ๋ฐฐ์๋๋ค. ์ป์์ต๋๋ค. ์ป์ง ๋ชปํ์ต๋๋ค.
concat() ๋ฉ์๋๋ ๋ฌธ์์ด์ ๋ณ๊ฒฝํ์ง ์๊ณ ํ์ฌ ๋ฌธ์์ด๊ณผ ๋งค๊ฐ ๋ณ์๋ก ์ ๋ฌ๋ ๋ฌธ์์ด์ ๋ณํฉํ์ฌ ์ ๋ฌธ์์ด์ ์์ฑํ๋ค๋ ์ ์ ์๋ ๊ฒ์ด ์ค์ํฉ๋๋ค . ๋ฐ๋ผ์ ๋ฉ์๋๋ ์๋ก์ด String ๊ฐ์ฒด๋ฅผ ๋ฐํํ๋ฏ๋ก ๊ธด String concat ์ฒด์ธ์ ๋ง๋ค ์ ์์ต๋๋ค.
์ค๋ฒ๋ก๋๋ ์ฐ์ฐ์ "+" ๋ฐ "+="๋ฅผ ์ฌ์ฉํ ์ฐ๊ฒฐ
์ด ๋ ์ฐ์ฐ์๋ ์ซ์์ ๊ฐ์ ๋ฐฉ์์ผ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค. concat() ์ฒ๋ผ ์๋ํฉ๋๋ค . "Code" ๋ฌธ์์ด๊ณผ "Gym" ๋ฌธ์์ด์ ์ฐ๊ฒฐํด ๋ด ์๋ค.public class StringConcat {
public static void main(String[] args) {
String myString = "Code" + "Gym";
myString+= ".cc";
System.out.println(myString);
}
}
์ผ๋ฐ์ ์ผ๋ก Java๋ ์ฌ์ฉ์ ํด๋์ค์ ๋ํ ์ค๋ฒ๋ก๋ ์์
์ ํ์ฉํ์ง ์์ง๋ง ์ด ๋ ์ฐ์ฐ์๋ ์ค๋ฒ๋ก๋๋ ์ํ๋ก ์๋ํฉ๋๋ค. + ์ฐ์ฐ์ ๋ด๋ถ์ concat() ์ด ์จ๊ฒจ์ ธ ์๋ค๊ณ ์๊ฐํ ์ ์์ง๋ง ์ค์ ๋ก๋ ๋ค๋ฅธ ๋ฉ์ปค๋์ฆ์ด ์ฌ์ฉ๋ฉ๋๋ค. Java ํ๋ก๊ทธ๋จ ๋ฐ์ดํธ ์ฝ๋๋ฅผ ๋ณด๋ฉด StringBuilder๊ฐ ์์ฑ๋์๊ณ ํด๋น append() ๋ฉ์๋๊ฐ ์ฌ์ฉ๋ ๊ฒ์ ๋ณผ ์ ์์ต๋๋ค. Java Compiler๋ "+" ์ฐ์ฐ์๋ฅผ ๋ณด๊ณ ํผ์ฐ์ฐ์๊ฐ ๊ธฐ๋ณธ ์ ํ์ด ์๋ ๋ฌธ์์ด์์ ์ธ์ํฉ๋๋ค. ๋ฐ๋ผ์ concat์ฒ๋ผ ์๋ํฉ๋๋ค.
public class StringTest2 {
public static void main(String[] args) {
String hello = "hello";
String world = " world!";
String helloworld = (new StringBuilder().append(hello).append(world).toString());
System.out.println(helloworld);
//this is the same as:
String result = hello + world;
}
}
์ฐ๊ฒฐ(0) ๋๋ + ?
๋ฌธ์์ด์ ํ ๋ฒ๋ง ๋ณํฉํด์ผ ํ๋ ๊ฒฝ์ฐ concat() ๋ฉ์๋๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๋ค๋ฅธ ๋ชจ๋ ๊ฒฝ์ฐ์๋ + ๋๋ Stringbuffer / StringBuilder ์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค . ๋ํ + ์ฐ์ฐ์๋ ์ ํ์ ๋ณํํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด ํผ์ฐ์ฐ์ ์ค ํ๋๊ฐ ์ซ์์ด๊ณ ๋ ๋ฒ์งธ๊ฐ ๋ฌธ์์ด์ด๋ฉด ์ข ๋ฃ์ ๋ฌธ์์ด์ ์ป์ต๋๋ค. ์:public class StringConcat {
public static void main(String[] args) {
int myInt = 5;
String myString = " days";
System.out.println(myInt + myString);
boolean b = (myInt + myString) instanceof String;
System.out.println(b);
}
}
instanceof๋ฅผ ์ฌ์ฉํ์ฌ (myInt + myString) ์ด ๋ฌธ์์ด ์ธ์ง ํ์ธํ์ต๋๋ค . ๋ค์์ ์ด ํ๋ก๊ทธ๋จ์ ์ถ๋ ฅ์
๋๋ค.
5์ผ ์ฐธ
๋ํ + ์ฐ์ฐ์์ concat()์ ๋ฌธ์์ด ์ค ํ๋๊ฐ null์ธ ๊ฒฝ์ฐ ๋ค๋ฅด๊ฒ ์๋ํฉ๋๋ค. + ๋๋ += ์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ ๋ ํผ์ฐ์ฐ์ ์ค ํ๋ ๊ฐ ๋ฌธ์์ด์ด๋ฉด ์ด๋ฏธ ๋งํ๋ฏ์ด ์ ํ ๋ณํ์ด ๋ฐ์ํฉ๋๋ค. null์๋ ๋์ผํ๊ฒ ์ ์ฉ๋ฉ๋๋ค. ์ ๋ฌธ์์ด์ ์ป์ต๋๋ค.
public class StringConcat {
public static void main(String[] args) {
String myString = "book ";
System.out.println(myString + null);
System.out.println((myString + null) instanceof String);
}
}
์ถ๋ ฅ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๋์ null ์ฐธ
public class StringConcat {
public static void main(String[] args) {
String myString = "book ";
System.out.println(myString.concat(null));
}
}
์ถ๋ ฅ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
StringConcat.main(StringConcat.java:6)์ java.base/java.lang.String.concat(String.java:1972) ์ค๋ ๋ "main" java.lang.NullPointerException์ ์์ธ
GO TO FULL VERSION