목차
문자열 분할 – split
특정 문자열 (분리자)로 문자열을 분할합니다.
샘플 코드
public static void splitSample() { String line = "사과, 귤, 바나나"; String[] fruits = line.split(","); for (String fruit : fruits) { System.out.println(fruit); } }
출력 결과:
사과 미칸바나
기본 문자열 조인
"+" 연산자로 문자열을 결합할 수 있습니다.
샘플 코드
public static void plusSample() { String s1 = "hello "; String s2 = "world!"; System.out.println(s1 + s2); }
출력 결과:
hello world!
문자열을 구분자로 결합 – 조인
특정 문자열 (분리자)로 문자열을 결합합니다 (java8 이상에서 사용 가능)
샘플 코드
public static void joinSample() { String line = String.join(",", "사과", "귤", "바나나"); System.out.println(line); }
join 은 문자열 배열에서도 같은 방식으로 결합할 수 있습니다.
public static void joinArraySample() { String[] fruits = {"사과", "귤", "바나나"}; String line = String.join(",", fruits); System.out.println(line); / /결과는 동일}
출력 결과:
사과, 귤, 바나나
지정된 범위의 문자열을 잘라냅니다. substring
잘라내기의 시작점과 끝점을 지정하여 문자열을 부분적으로 잘라냅니다.
샘플 코드
public static void substringSample() { String str = "hello world!"; System.out.println(str.substring(0, 5)); System.out.println(str.substring(2, 9)); System. out.println(str.substring(6)); // 시작점만 지정할 수도 있습니다}
출력 결과:
hello llo wor world!
전후의 공백 삭제 – trim
문자열의 전후의 반각 스페이스, 개행, 탭을 제거합니다.
문자열의 중간에 있는 공백이나 전각 공백은 제거되지 않습니다.
샘플 코드
public static void trimSample() { String str = " hello world! "; System.out.println(str.trim()); }
출력 결과:
hello world!
문자열의 일부를 다른 문자열로 바꾸기 – replace
문자열의 일부를 지정된 문자열로 바꿉니다. replace는 일치하는 모든 문자열을 대체합니다.
샘플 코드
public static void replaceSample() { String str = "hello world!"; System.out.println(str.replace("l", "×")); }
출력 결과:
he××o wor×d!
replaceFirst는 일치하는 첫 번째 문자열만 바꿉니다.
샘플 코드
public static void replaceFirstSample() { String str = "hello world!"; System.out.println(str.replaceFirst("l", "×")); }
출력 결과:
he×lo world!
문자열의 문자 수를 반환합니다. 길이
캐릭터 라인의 캐릭터수를 돌려줍니다. String.length()는 단순히 문자 수를 반환합니다.
샘플 코드
public static void lengthSample() { String str = "〇〇현 □□시 △△마을 10-11"; System.out.println(str.length()); }
출력 결과:
14
바이트수가 알고 싶은 경우는 String.getBytes().length 를 사용합니다. Java8부터 문자 코드는 표준으로 UTF8이므로, 전각 문자 1 문자당 3 바이트입니다.
샘플 코드
public static void byteLengthSample() { String str = "〇〇현 □□시 △△마을 10-11"; System.out.println(str.getBytes().length); }
출력 결과:
32