이번 시간에는 StringBuffer 클래스의 delete(int start, int end) 메소드를 확인해보도록 하겠습니다. 우선, StringBuffer 클래스는 String 클래스와는 다르게 정적 문자열이라는 특징을 가지고 있습니다.
예를들어, String 클래스의 변수 a가 ="123"; 이면, 이 a는 변함이 없지만, StringBuffer 클래스의 a는 변할 수 있다는 특징이 있습니다. 다만, 이 StringBuffer는 new를 이용하여 새로운 객체를 생성하여야 합니다.
다음으로 delete(int start, int end)메소드에 대해서 확인하도록 하겠습니다.
delete(int start, int end)
delete(int start, int end) 메소드는 StringBuffer 클래스에 속한 메소드이며, 문자열을 삭제할 수 있습니다. 예를들어, a="123456"; 이 있다면 delete(int start, int end)메소드를 이용하면 "34"를 지우고 a="1256" 으로 됩니다.
아래 예제를 통하여 더 살펴보도록 하겠습니다.
package 기본기04;
public class a03 {
public static void main(String[] args) {
StringBuffer a=new StringBuffer("1234567"); //새로운 StringBuffer 객체를 생성합니다. System.out.println(a.charAt(0)); System.out.println(a.charAt(1)); System.out.println(a.charAt(2)); System.out.println(a.charAt(3)); System.out.println(a.charAt(4)); System.out.println(a.charAt(5)); System.out.println(a.charAt(6));
System.out.println("---------");
a=a.delete(0,1); System.out.println(a);
System.out.println("---------"); for(int i=0;i<a.length()-1;) //i의 증감요소는 없습니다. 그러면 무한루프를 돌겠지만 Sys.out의 a.length요소가 delete를 하면 점점 없어져서 출력할 요소가 없습니다. { a=a.delete(0,1); //만약 위의 delete요소가 없다면 a.length는 6으로 한정되서 계속 출력이 되겠지만 하나씩 없어지면 언젠가 0이 되어 출력이 없겠지요. System.out.println("String a의 길이는 변해서: " +a.length()+ " 입니다");
}
}
} |
<결과물>
자료가 마음에 드셨다면 자주 찾아주세요^^ 글 올리는데 힘이됩니다.
'JAVA-클래스의 중요메소드 > StringBuffer클래스' 카테고리의 다른 글
JAVA-중요04-insert() (0) | 2018.07.02 |
---|---|
JAVA-중요02-reverse() (0) | 2018.07.02 |
JAVA-중요01-append() (0) | 2018.07.01 |