본문 바로가기

Wanna be a Programmer/Java Programming

Java Programming - String, StringBuffer, StringBuilder, DTO


문자열 String, StringBuffer, StringBuilder


String 객체는 한번 객체가 만들어지면 그 값은 절대 불변

(변경 될 때마다 객체가 새로 만들어짐)

: “”, 객체 : String s = “ABC”; String s = new String(“ABC”);

- starsWith(“ab”) -> 문자열이 ab로 시작하는지 true or false 반환

- endsWith(“ef”) -> 문자열이 ef로 끝나는지 true or false 반환

- indexOf(“a”) -> 특정 문자나 문자열이 몇 번째에 위치하는지 조회, intindex로 반환

- lastIndexOf(“abc”) -> 특정 문자나 문자열이 어디에 위치하는지 뒤에서부터 조회

- indexOf(“a”, 2) -> 2번 인덱스에서부터 찾기 시작

- charAt(5) -> 5번의 인덱스의 char를 반환

- subString(14) -> 14번 인덱스부터 끝까지 문자열 반환

- subString(7, 12) -> 7번 인덱스부터 12번 인덱스까지의 문자열 반환

- toLowenCase() -> 대문자를 소문자

- toUpperCase() -> 소문자를 대문자

- replace(‘a’, ‘k’) -> 문자 ‘a’‘k’로 변환

- replaceAll(“Hello”, “헬로”) -> Hello를 헬로로 변환

- split(“\\.”) -> .을 기준으로 문자열을 나눔


Java.lang.StringBuffer , Java.lang.StringBuilder

-> 문자열을 다루기 위한 class(문자열 변경)

- sb.length() 글자수 조회

- sb.capacity() 버퍼크기

- append("StringBuffer Test ") 기존의 문자열에 문자열을 추가

- sb.reverse() 문자열의 순서를 뒤집음 ex) this is good. .doog si siht

- sb.setCharAt(0, '!') 0!로 변환

- sb.delete(8, 21) 9~20 인덱스의 문자를 삭제

- sb.insert(8, "StringBuffer ") 8번 인덱스에 “StringBuffer ”삽입

- sb.replace(8, 21, "스트링버퍼") 8~20의 문자열을 "스트링버퍼" 로 변경

- String str = sb.toString() StringBuffer -> String



DTO(Data Transfer Object) 값 표현(Type)


- private attribute (instance 변수)

- 생성자 no args, 모든 attribute 값 설정

- public setter / getter 메소드 private attiributesetter/getter메소드 : Property

- toString(), equals(), hashCode() Overriding