- StringBuffer 클래스
StringBuffer 클래스
1. 동적문자열. 변경 가능한 문자열
2. equals 메서드를 오버라이딩 안함. => 내용 비교 안됨.
=> 내용 비교를 위해서는 String 객체로 비교해야 함.
3. String 클래스의 보조 역할
4. = 대입연산자로 객체 생성 불가
5. StringBuilder 클래스와 같은 기능
📌
package chap11;
public class StringBufferEx1 {
public static void main(String[] args) {
StringBuffer s1 = new StringBuffer("abc");
StringBuffer s2 = new StringBuffer("abc");
if(s1 == s2) System.out.println("s1 == s2 : 같은 객체임");
else System.out.println("s1 != s2 : 다른 객체임");
if(s1.equals(s2)) System.out.println("s1.equals(s2) : 같은 내용임");
else System.out.println("s1.equals(s2) : 다른 내용임");
//내용 비교
//toString() : 객체의 문자열에 관여하는 메서드
if(s1.toString().equals(s2.toString()))
System.out.println("s1.toString().equals(s2.toString()) : 같은 내용임");
else System.out.println("s1.equals(s2) : 다른 내용임");
}
}
- StringBuffer 클래스의 메서드
StringBuilder 클래스와 같은 메서드를 가진다.(기능도 동일)
📌
package chap11;
public class StringBufferEx2 {
public static void main(String[] args) {
StringBuffer sb = new StringBuffer();
//sb.append() :sb 객체에 값을 뒤쪽 추가
sb.append("abc").append(123).append('A').append(false);
System.out.println(sb);
//delete(2,4) :2번인덱스 부터 3번인덱스까지 문자 제거
sb.delete(2, 4);
System.out.println(sb); //ab23Afalse
//4번 인덱스 글자 제거
sb.deleteCharAt(4);
System.out.println(sb); //ab23false
//5번인덱스에 == 추가
sb.insert(5, "==");
System.out.println(sb); //ab23f==alse
sb = new StringBuffer("ABCDEFG");
//replace : 0번인덱스부터 2번인덱스까지 abc 치환
sb.replace(0, 3, "abc");
System.out.println(sb); //abcDEFG
//역순 변경
sb.reverse();
System.out.println(sb);
}
}
'수업(국비지원) > Java' 카테고리의 다른 글
| [Java] chap11: 기본 API(패키지 클래스) - Math (0) | 2023.04.16 |
|---|---|
| [Java] chap11: 기본 API(패키지 클래스) - 기본 API Exam3.(delChara메서드 구현) (0) | 2023.04.16 |
| [Java] chap11: 기본 API(패키지 클래스) - 기본 API (숫자 <= 문자열) (0) | 2023.04.16 |
| [Java] chap11: 기본 API(패키지 클래스) - String.format 메서드 (0) | 2023.04.16 |
| [Java] chap11: 기본 API(패키지 클래스) - 기본 API Exam2.(count 메서드 구현) (0) | 2023.04.16 |