Hello, Android!
문자열 본문
문자열은 기본적으로 문자들의 배열이다
그렇기때문에 배열에 접근할때처럼 []를 이용하여 접근이 가능하다
다만 배열과는 다르게 [] 를 활용하여 문자열의 특정 요소에 다른 값을 넣는것은 불가능하다
만약 문자열에 다른 문자열을 할당하게되면 새로운 문자열을 생성하여 새로 할당하게 된다
위와같이 str에 새로운 문자열을 할당하게 되면, 새로운 메모리에 할당을 하게되며
기존의 값은 CG에 의해 해제가 일어나게된다
(CG는 Garbage Collector으로 할당한 메모리가 앞으로 더이상 사용하지 않는 경우
알아서 찾아내서 메모리를 해제하여, 메무리 누수를 막아준다)
- 문자열 잘라내기
문자열을 자르는 함수는 substring, subSequence 두가지 함수가 있다
두 함수 모두 매개변수로 인덱스의 범위를 받는다
위의 경우 7번째 인덱스에 있는 w부터 11번째인 d까지만 잘라내어
word 가 나온다
- 문자열 비교
문자열 비교에는 compairTo 함수를 사용한다
문자열1.compairTo(문자열2) 의 형태로 사용하며
만약 문자열1, 문자열2가 같다면 0을 반환하고
문자열1이 문자열 2보다 크면 양수 작으면 음수를 반환한다
만약 매개변수에 문자열과 true를 넣게되면 대소문자를 무시하고 비교한다
- StringBuilder
StringBuilder는 문자열의 공간을 크게 할당하여, 문자열의 특정 요소의 변경이 가능하다
다만 일반 문자열보다는 속도가 느리고 메모리를 조금 더 사용하게된다
그렇기때문에 문자열이 자주 변경되는 경우에 주로 사용한다
StringBuilder의 함수로 append, insert, delete가 있다
append는 문자열의 뒤에 매개변수로 넣어준 문자열을 추가한다
insert는 인덱스 번호와 문자열을 매개변수로 받아 해당 위치에 문자열을 추가한다
delete는 두개의 인덱스 번호를 받아, 해당 범위의 요소를 삭제한다
- split
split은 특정 문자를 기준으로 문자열을 잘라낸다
위의 경우 "& "를 기준으로 잘라낸다
split의 반환은 List로 넘어온다
만약 기준을 여러개를 주고싶으면 , 로 여러개의 매개변수를 넣어준다
'Kotlin' 카테고리의 다른 글
Set (0) | 2020.07.11 |
---|---|
List (0) | 2020.07.05 |
배열의 정렬과 필터링 (0) | 2020.06.28 |
배열의 추가 잘라내기 (0) | 2020.06.27 |
배열 arrayof, Array() (0) | 2020.06.21 |