No.9 StringBuffer 클래스 및 StringBuilder 클래스

1608 단어
문자열을 수정해야 할 때 StringBuffer와 StringBuilder 클래스를 사용해야 합니다.String 클래스와 달리 StringBuffer와 StringBuilder 클래스의 대상은 여러 번 수정되고 새로운 대상이 생기지 않습니다.

차이점:


(1) StringBuilder 클래스는 Java 5에서 제시됩니다.StringBuffer는 항상 존재합니다. (2) StringBuffer의 대부분 방법은synchronized에 의해 수식되어 있으며, 이것은 라인이 동기화됨을 의미하며, 같은 시간에 한 라인만 그것을 조작할 수 있습니다.그러니까 라인이 안전하다는 거야.다중 스레드 프로그램에서는 일반적으로 StringBuffer를 사용합니다.(3) StringBuilder는 StringBuffer와 달리 라인이 안전하지 않지만 StringBuffer보다 효율이 높기 때문에 보통 단일 라인의 프로그램에서 StringBuilder를 사용하는데 자바5 이전에 StringBuilder가 없기 때문에 5.0 이전에 사용할 수 없다.
StringBuffer str =  new StringBuffer("string");
str.append("aa");

일반적인 방법:


(1) 증가
1.  public StringBuffer append(type s) 。
2.  public insert(int offset type i) offset , type 。

(2) 삭제
  public delete(int start, int end) 。

start와end는 삭제할 문자열의 첫 번째 끝을 표시합니다
(3) 고치다
      replace(int start, int end, String str)  String 。
      void setCharAt(int index, char ch)  ch

.
(4) 조사
char charAt(int index)  char 。

(5) 반전
    public StringBuffer reverse()  。

참고: 위의 메서드는 새 객체를 반환하지 않습니다.(6) Buffer/builder에 대해 메모리가 개척한 공간을 반환합니다.
int capacity() 。

(7) 반환 문자열의 길이
  int length()  (6)  

(8) 스트링 substring() 하위 문자열 가져오기
      String substring(int start)  String, start 。
      String substring(int start, int end)  String, start end 。

주의:substring 방법은 새로운 문자열의 대상을 되돌려줍니다

좋은 웹페이지 즐겨찾기