StringBuilder

백마금편·2021년 10월 19일
0

코딩테스트 팁

목록 보기
1/3

🎯 StringBuilder

java.lang.StringBuilder
StringBuilder

  • StringBuilder, StringBuffer, String 클래스는 문자열을 다루는 클래스이다.
  • String 클래스가 문자열을 생성자로 넣어 인스턴스를 한 번 생성하고 나면 인스턴스가 가진 문자열 값을 변경하지 못하는 단점을 보완한 클래스가 StringBuilder 클래스 이다.
    StringBuilder 클래스 같은 인스턴스에 문자열을 추가하거나 변경할 수 있도록 설계 되었다.
  • StringBuilder, StringBuffer 클래스는 모두 쓰임과 메소드가 같지만, StringBuffer동기화 처리가 되어 있어 여러 스레드에서 동시에 같은 문자열 인스턴스에 접근할 수 있다.
    하지만 StringBuilder 인스턴스는 여러 스레드에서 사용하기에 적절하지 않다.

🧐 자주쓰이는 메소드

⭐ int length()

  • 문자열의 길이를 리턴한다.
StringBuilder sb = new StringBuilder("Default String");
System.out.println(sb.length());	// 14

⭐ int capacity()

  • 현재 용량을 리턴한다.
StringBuilder sb = new StringBuilder("Default String");
System.out.println(sb.capacity());	// 30

⭐ StringBuilder append(String str)

  • 문자열 str을 추가한다.
StringBuilder sb = new StringBuilder("Default String");
System.out.println(sb.append("!"));	// Default String!

⭐ StringBuilder reverse()

  • 문자열을 역순으로 리턴한다.
StringBuilder sb = new StringBuilder("Default String");
System.out.println(sb.reverse());	// gnirtS tluafeD

⭐ StringBuilder replace(int start, int end, String str)

  • 주어진 위치에 문자열을 주어진 문자열로 대체한다.
StringBuilder sb = new StringBuilder("123456");
System.out.println(sb.replace(0, 1, "A"));	// A23456

⭐ void setCharAt(int index, char ch)

  • 주어진 인덱스에 있는 문자를 주어진 문자로 바꾼다.
StringBuilder sb = new StringBuilder("123456");
sb.setCharAt(0, '*');
System.out.println(sb.toString());	// *23456

⭐ String substring(int beginIndex, int endIndex)

  • 원래 문자열에서 beginIndex에서 endIndex까지의 내용으로된 문자열을 리턴한다.
StringBuilder sb = new StringBuilder("123456");
System.out.println(sb.substring(0, 2));	// *2

⭐ String toString()

  • StringBuffer를 String으로 변환한다.

📖 API 문서

JAVA StringBuilder API

profile
뭐 어떻게 잘 되겠지

0개의 댓글