String 클래스는 문자열을 조작할 수 있는 유용한 메서드들을 가지고 있다.
charAt() 메서드
charAt() 메서드는 해당 문자열의 특정 인덱스에 해당하는 문자를 반환한다. 만약, 문자열의 길이보다 큰 인덱스 값이나 음수를 전달하면 오류가 발생한다.
class StringEx {
public static void main(String[] args) {
String str = new String("Java");
System.out.println(str); // Java
System.out.println(str.charAt(0)); // J
System.out.println(str.charAt(1)); // a
System.out.println(str.charAt(2)); // v
System.out.println(str.charAt(3)); // a
}
}
compareTo() 메서드
compareTo() 메서드는 해당 문자열을 인수로 전달된 문자열과 사전 편찬 순으로 비교한다. 비교할 때 대소문자를 구분하여 비교한다. 만약 두 문자열이 같다면 0을 반환하고, 해당 문자열이 인수로 전달된 문자열 보다 작으면 음수, 크면 양수를 반환한다.
만약, 대소문자를 구분하지 않고 비교하고자 한다면, compareToIgnoreCase() 메서드를 사용한다.
class StringEx {
public static void main(String[] args) {
String str = new String("Java");
System.out.println(str); // Java
System.out.println(str.compareTo("aJav")); // -23
System.out.println(str.compareTo("Java")); // 0
System.out.println(str.compareTo("java")); // -32
System.out.println(str.compareToIgnoreCase("java")); // 0
}
}
concat() 메서드
concat() 메서드는 해당 문자열의 뒤에 인수로 전달된 문자열을 추가한 새로운 문자열을 반환한다. 만약, 인수로 전달된 문자열의 길이가 0이면, 문자열을 그대로 반환한다.
class StringEx {
public static void main(String[] args) {
String str = new String("Hello");
System.out.println(str); // Hello
System.out.println(str.concat("Java")); // HelloJava
System.out.println(str.concat(" Java!")); // Hello Java!
}
}
indexOf() 메서드
indexOf() 메서드는 해당 문자열에서 특정 문자나 문자열이 처음으로 등장하는 위치의 인덱스를 반환한다. 만약, 전달된 문자나 문자열이 포함되어 있지 않으면 -1을 반환한다.
class StringEx {
public static void main(String[] args) {
String str = new String("Hello");
System.out.println(str); // Hello
System.out.println(str.indexOf('H')); // 0
System.out.println(str.indexOf('o')); // 4
System.out.println(str.indexOf('l')); // 2
System.out.println(str.indexOf('a')); // -1
System.out.println(str.indexOf("Hello")); // 0
System.out.println(str.indexOf("llo")); // 2
}
}
trim() 메서드
trim() 메서드는 해당 문자열의 맨 앞과 맨 뒤에 포함된 공백(” “) 문자를 제거한다.
class StringEx {
public static void main(String[] args) {
String str = new String(" Hello ");
System.out.println(str); // " Hello "
System.out.println(str.trim()); // "Hello"
System.out.println(str + '!'); // " Hello !"
System.out.println(str.trim() + '!'); // "Hello!"
}
}
toLowerCase()와 toUpperCase() 메서드
toLowerCase() 메서드는 해당 문자열을 모두 소문자로 변환하고,
toUpperCase() 메서드는 해당 문자열을 모두 대문자로 변환한다.
class StringEx {
public static void main(String[] args) {
String str = new String("HeLlO");
System.out.println(str); // HeLlO
System.out.println(str.toLowerCase()); // hello
System.out.println(str.toUpperCase()); // HELLO
}
}
이 외의 메서드
이 외에도 스트링 클래스의 메서드가 존재한다. 아래 링크에서 스트링 클래스의 메서드에 대해 자세히 다루고 있다.
https://www.javatpoint.com/understanding-toString()-method
'언어(Language) > Java' 카테고리의 다른 글
[Java] 자바 StringBuilder와 StringBuffer 정리 및 사용법 (0) | 2022.09.09 |
---|---|
[Java] 자바 StringTokenizer 클래스 정리 (문자열 분리 토큰) (0) | 2022.09.08 |
[Java] 자바의 문자열 클래스 정리 (String class, 인스턴스) (2) | 2022.09.06 |
[Java] 자바의 데이터 타입 종류와 데이터 타입 변환 (0) | 2022.09.05 |
[Java] 자바의 데이터 타입과 리터럴의 개념 정리 (1) | 2022.09.04 |