<aside> 💡

자바 기초문법을 배울때 데이터타입에 int, double, boolean 등등 데이터타입을 배울때 문자열을 표현하는 타입인 String 타입을 배우게 된다. 그런데, 앞의 int, double, boolean은 기본형 데이터타입이지만 String은 클래스타입이다.

</aside>

그렇다면 String은 기본형이 아닌 참조형이다. 그런데 아래 예제를 보면

String str = "hello";

마치 기본형 타입처럼 초기화를 해주는걸 볼 수 있다.

자바에서는 String클래스는 자주 쓰이기 때문에 “”로 문자열을 감싸면 알아서 생성자로 초기화해주는 형식으로 변환해준다.

String str = "hello";
String str = new String("hello");

String 클래스의 기능

String클래스 - 참조형

<aside> 💡

String클래스는 참조형이다 따라서 인스턴스를 생성하면 참조값이 들어있기 때문에 참조형변수는 계산에 사용할 수 없다.

</aside>

public class StringConcatMain {
 public static void main(String[] args) {
 String a = "hello";
 String b = " java";
 String result1 = a.concat(b);
 String result2 = a + b;
 System.out.println("result1 = " + result1);
 System.out.println("result2 = " + result2);
 }
}
/*
결과
result1 = hello java
result2 = hello java
*/