예제1)
public class Test7 {
public static void main(String[] args){
StringBuffer sb1=new StringBuffer();
StringBuffer sb2=new StringBuffer();
System.out.println(sb1.capacity()); //초기버퍼크기 : 16
sb1.append("seoul");
sb2.append("seoul");
//주소비교
System.out.println(sb1==sb2); //false
//StringBuffer에는 equals()메소드가 없으며 최상위 클래스인 Object의 equals()메소이드임
//==> 내용을 비교하는 것이 아니라 주소비교
System.out.println(sb1.equals(sb2)); //false
// 내용비교 : String으로 변환하여 비교해야함
System.out.println(sb1.toString().equals(sb2.toString()));
sb1.append("korea");
sb1.append("자바");
sb1.append("하이브리드웹앱");
sb1.append("안드로이드");
sb1.append("프레임워크");
sb1.append("AJAX");
sb1.append("XML");
System.out.println(sb1.toString());
System.out.println(sb1);
System.out.println(sb1.capacity()); //capacity => 버퍼의 크기를 나타낸다.
//0번째에 대한민국 추가, 결과적으로 대한민국이 제일 앞쪽에 온다.
sb1.insert(0, "대한민국");
System.out.println(sb1);
//몇번째 위치인지 표시 (k의 위치)
System.out.println(sb1.indexOf("korea")); // 9
//'korea'뒤에 '사람'추가
sb1.insert(sb1.indexOf("korea")+"korea".length(),"사람");
System.out.println(sb1);
/*아래 명령은 위와 동일
sb1.insert(14,"사람");
System.out.println(sb1);
*/
//안드로이드제거
sb1.delete(sb1.indexOf("안드로이드"), sb1.indexOf("안드로이드")+"안드로이드".length());
System.out.println(sb1);
// korea 이후의 문자열 제거
sb1.delete(sb1.indexOf("korea")+"korea".length(),sb1.length());
System.out.println(sb1);
System.out.println(sb1.length()); //14
System.out.println(sb1.capacity()); // 70
//버퍼의 크기를 문자열의 길이로 맞춤(쓸데없는 버퍼크기를 줄이기위한 명령어)
sb1.trimToSize();
System.out.println(sb1.capacity()); //14
}
}
예제1 결과)
16
false
false
true
seoulkorea자바하이브리드웹앱안드로이드프레임워크AJAXXML
seoulkorea자바하이브리드웹앱안드로이드프레임워크AJAXXML
70
대한민국seoulkorea자바하이브리드웹앱안드로이드프레임워크AJAXXML
9
대한민국seoulkorea사람자바하이브리드웹앱안드로이드프레임워크AJAXXML
대한민국seoulkorea사람자바하이브리드웹앱프레임워크AJAXXML
대한민국seoulkorea
14
70
14
'자바 > 클래스' 카테고리의 다른 글
Scanner 클래스 (0) | 2013.05.19 |
---|---|
SimpleDateFormat (0) | 2013.05.19 |
Wrapper 클래스 (0) | 2013.05.19 |
BigDecimal와 BigInteger (0) | 2013.05.19 |
string 클래스 (0) | 2013.05.15 |