프로그래밍/java

[자바 / Java] StringBuilder의 자주 사용되는 메소드

pupu91 2022. 9. 3. 15:44
반응형

 

String 과 StringBuilder 차이

String

: 불변

  +연산으로 합치기

  문자열에 합치기하는 경우 새로운 인스턴스를 반환

  문자열 변경이 자주 일어나느 경우 성능 면에서 좋지 않음

  변하지 않는 문자열을 자주 읽어 들이는 경우에는 성능이 좋음

   

StringBuilder

: 가변

  oppend() 메소드로 합치기

  기존 인스턴스를 수정(새로운 객체생성x)

  잦은 문자열 변경이 일어나는 경우 String 보다 성능이 좋음

 


StringBuilder의 자주 사용되는 메소드

 


 

 

capacity()

: 용량(현재 버퍼의 크기)을 정수형으로 반환하는 메소드

  16이 기본 용량

  

 

append()

: 인자로 전달 된 값을 문자열로 변환 후 기존 문자열의 마지막에 추가

  기본 용량을 초과하는 경우 (기존 문자열 + 1 ) * 2를 하여 용량을 확장시킴

 

 

delete()

: 시작 인덱스와 종료 인덱스를 이용해서 문자열에서 원하는 부분의 문자열을 제거

 

 

delelteCharAt()

: 문자열 인덱스를 이용해서 문자 하나를 제거

 

 

insert()

: 인자로 전달 된 값을 문자열로 변환 후 지정한 인덱스 위치에 추가

 

 

reverse()

: 문자열 인덱스 순번을 역순으로 재배열

 

StringBuilder sb2 = new StringBuilder("javaoracle");

System.out.println(sb2.delete(2, 5));
=> jaracle

System.out.println(sb2.deleteCharAt(0));
=> aracle

System.out.println(sb2.insert(1, "vao"));
=> avaoacle
System.out.println(sb2.insert(0, "j"));
=> javaoacle

System.out.println(sb2.reverse());
=> elcaroavaj

 

 

  String  클래스와 동일한 메소드 있음

  :  charAt(), indexOf(), lastIndexOf(), length(), replace(), substring(), toString()

 

 

반응형