1. 문자(Character)

// 1. 문자
char character = 'o'; // o

char(문자; Character)는 작은따옴표(')를 사용하는 2바이트 기본 자료형으로 단일 글자만 저장 가능하다.

2. 문자열(String)

// 2. 문자열
String a = "아이유 사랑해요! \n";
String b = "아이유 화이팅!";
String c = a + b;
System.out.println(c);
아이유 사랑해요!
아이유 화이팅!

String(문자열; String)은 큰따옴표(")를 사용하는 참조 자료형으로 0개 이상의 문자를 저장하는 객체이다. 문자는 실제 문자 코드(숫자)를 저장하지만, 문자열은 문자들의 배열 주소를 관리하며 불변(immutable)의 특징을 갖는다.

String x = "아이유 짱!";
String y = "아이유 짱!";
System.out.println(x == y); // false
System.out.println(x.equals(y)); // true

따라서 위 코드처럼 xy의 할당된 문자열 자체는 같지만, 동등 연산자로 비교했을 경우 false가 나오게 된다. 해당 문자열이 저장된 주소가 서로 다르기 때문이다. 할당된 문자열 자체의 비교를 원한다면 .equals()를 사용하면 된다.

3. 문자열의 길이(length)

// .length() : 문자열 길이
String b = "아이유 화이팅!";
int d = b.length();
System.out.println(d); // 8

.length() : 문자열의 길이(length)는 공백(스페이스바)까지 포함하여 카운트한다.

4. 문자열의 교체(replace)

// .replace(a, b) : 문자열 교체
String b = "아이유 화이팅!";
System.out.println(b); // 아이유 화이팅!
String r = b.replace("아이유", "IU");
System.out.println(r); // IU 화이팅!

.replace(교체 전, 교체 후) : 문자열 교체
.replaceAll(교체 전, 교체 후) : 해당 문자열 모두 교체

5. 문자열의 추출(substring)

// .substring(start[, end]) : 문자열 추출
String iday = "1919/03/01";

String year = iday.substring(0, 4);
String month = iday.substring(5, 7);
String day = iday.substring(8);

System.out.println(year); // 1919
System.out.println(month); // 03
System.out.println(day); // 01

.substring(start[, end]) : 문자열의 start index부터 end index 앞까지 추출

profile
매일 성장하는 개발자

0개의 댓글