이번 편의 목표: 문자열을 비교하고, 공백을 제거하며, 필요한 부분만 잘라 냅니다.
책 제목은 String입니다. 입력에는 앞뒤 공백이 섞일 수 있고, 같은 글자인지 확인해야 할 때도 있습니다.
비교와 정리
public class TitleClean {
public static void main(String[] args) {
String raw = " 개미 ";
String title = raw.trim();
System.out.println(title.length());
System.out.println(title.equals("개미"));
System.out.println(title.equals("개비"));
System.out.println(raw == title);
}
}trim 뒤의 길이는 2입니다. equals 결과는 true와 false입니다. ==는 문자열 내용이 아니라 같은 객체인지를 볼 수 있으므로 제목 비교에 쓰지 않습니다.
자르기와 포함
String shelfCode = "A-120";
System.out.println(shelfCode.substring(0, 1));
System.out.println(shelfCode.substring(2));
System.out.println(shelfCode.contains("-"));
System.out.println(shelfCode.startsWith("A"));출력은 A, 120, true, true입니다. substring(0, 1)은 시작은 포함하고 끝은 포함하지 않습니다. 한글도 한 글자씩 다룰 수 있지만, 자모 단위 분리까지는 가지 않습니다.
문자열에 다른 문자열을 이어 붙이면 새 문자열이 만들어집니다. 원래 변수는 다시 대입하기 전에는 바뀌지 않습니다.
String title = "개미";
title.concat(" 개정판");
System.out.println(title);
title = title + " 개정판";
System.out.println(title);첫 출력은 개미이고, 둘째는 개미 개정판입니다. concat의 결과를 버리지 말고 필요할 때만 대입합니다.
직접 해 보기
" 자바 입문 "에서 앞뒤 공백을 제거한 뒤, 결과가 자바 입문과 같은지 true를 출력하세요.
해설
public class TrimEquals {
public static void main(String[] args) {
String raw = " 자바 입문 ";
String title = raw.trim();
System.out.println(title.equals("자바 입문"));
}
}출력은 true입니다.
COMMENTS
댓글 0
이 글에 대한 의견이나 질문을 남겨 주세요.
댓글은 구글이나 카카오로 시작한 뒤에 남길 수 있습니다.
등록된 댓글이 없습니다.