새발블로그

Java 문자열 처리 본문

Problem Solving/개념

Java 문자열 처리

EUG 2025. 7. 4. 17:24

1. 문자(char)

  • 하나의 문자를 저장할 때 사용
char c = 'a';

 

2. 문자열(String)

문자열 생성

  • 큰따옴표로 생성
String str = "hello";
  • 숫자 타입 → 문자열 변환
String.valueOf(123);
  • 문자 배열 → 문자열 생성
char[] arr = {'h', 'i'};
String s = new String(arr);

문자열 연결

String a = "hello";
String b = "world";
String c = a + " " + b;

문자열 불변성

  • String은 변경 불가. 변경 시 새 객체 생성
String str = "hello";
str = "hi"; // 새로운 객체

문자열 비교

  • == : 참조 비교
  • equals() : 값 비교
a.equals(b);

 

3. 주요 String 메서드

메서드  설명
length() 길이 반환
charAt(i) 특정 문자 추출
indexOf('a') 처음 위치 찾기
lastIndexOf('a') 마지막 위치 찾기
substring(1, 4) 부분 문자열 반환
replace('a', 'b') 문자 치환
replaceAll("a", "b") 정규식 치환
contains("abc") 포함 여부 확인
split(" ") 문자열 나누기
trim() 앞뒤 공백 제거
toUpperCase() 대문자로 변환
toLowerCase() 소문자로 변환
toCharArray() 문자 배열로 변환
startsWith("a") 시작 여부 확인
endsWith("z") 끝 여부 확인

4. StringBuilder

특징

  • 변경 가능한 문자열 클래스
  • String보다 성능 우수 (많은 변경 작업 시)

주요 메서드

메서드  설명
append("str") 문자열 추가
insert(idx, "str") 특정 위치에 삽입
delete(s, e) 범위 삭제
deleteCharAt(i) 문자 하나 삭제
setCharAt(i, c) 문자 교체
reverse() 문자열 뒤집기
setLength(n) 길이 변경
StringBuilder sb = new StringBuilder("Hi");
sb.append(" there").reverse();
System.out.println(sb);

 

5. 문자열 → 숫자 변환

  • 정수, 실수 변환은 Wrapper 클래스 활용
int a = Integer.parseInt("123");
double b = Double.parseDouble("10.5");
  • 공백 기준 분할 후 변환 예시
String input = "3 -5 10.4";
String[] parts = input.split(" ");
int x = Integer.parseInt(parts[0]);
int y = Integer.parseInt(parts[1]);
double z = Double.parseDouble(parts[2]);

 

'Problem Solving > 개념' 카테고리의 다른 글

완전탐색 (Exhaustive Search) - 반복문을 활용한 접근  (2) 2025.07.04
시간복잡도  (0) 2025.07.04
코딩테스트를 위한 Java 심화  (0) 2025.07.04
코딩테스트를 위한 Java 개요  (0) 2025.07.04
테스트케이스  (0) 2025.07.04