알고리즘 풀때 스트링을 자주쓰는 편인데 코틀린 String에 대해 잘 안나와 있어 코틀린 사이트에서 추려서 정리해봤다
앞 뒤문자를 짜르는 명령어가 필요했는데 결국 substring을 이용해서 만들었다고 한다.
drop 은 문자열의 앞이나 뒷부분을 자를 때 사용된다.
내부적으로는 substring 으로 구현되어 있다.
- drop : 앞에서부터 n 개의 문자를 제거한 String 을 반환
- dropLast: 뒤에서부터 n 개의 문자를 제거
- dropWhile, dropLastWhile: 조건을 만족하지 않는 문자가 나올때까지 제거
- 파이썬같이 insert나 append를 찾고 싶었어나 배열은 자료구조상 안된 arrayList에서는 가능한것 같음.
val length: Int, | length : Returns the length of this character sequence. |
fun compareTo(other: String): Int | compare() : 스트링을 비교해서 같으면 0 다르면 차이를 int로 리턴 |
fun equals(other: Any?): Boolean | equals(): 스트링을 비교해서 같으면 true 리턴 |
fun get(index: Int): Char | get(idx): 지정된 index의 문자를 리턴 |
fun hashCode(): Int | hashCode() 문자열의 해시코드를 생성 |
operator fun plus(other: Any?): String | 2개의 스트링을 합쳐주는 연산자 |
fun subSequence(start: Int, end: Int): CharSequence | 지정된 범위의 Char Sequence를 리턴 |
fun toString(): String | 스트링을 리턴 ? |
val String.cstr: CValues<ByteVar> | |
val CharSequence.indices: IntRange | Returns the range of valid character indices for this char sequence. |
val CharSequence.lastIndex: Int | 스트링의 마지막 문자의 인덱스를 리턴 비었으면 -1 리턴 |
val String.utf16: CValues<UShortVar> | utf8 utf16 utf32등도 있다. |
val String.wcstr: CValues<UShortVar> | |
fun CharSequence.all(predicate: (Char) -> Boolean): Boolean | Returns true if all characters match the given predicate. |
fun CharSequence.any(): Boolean | Returns true if char sequence has at least one character. |
fun CharSequence.asIterable(): Iterable<Char> | Creates an Iterable instance that wraps the original char sequence returning its characters when being iterated. |
fun CharSequence.asSequence(): Sequence<Char> | Creates a Sequence instance that wraps the original char sequence returning its characters when being iterated. |
fun <K, V> CharSequence.associate( transform: (Char) -> Pair<K, V> ): Map<K, V> |
associate Returns a Map containing key-value pairs provided by transform function applied to characters of the given char sequence. |
fun String.capitalize(locale: Locale): String | |
fun String.decapitalize(locale: Locale): String | |
fun CharSequence.chunked(size: Int): List<String> | 지정된 사이즈로 문자시퀀스를 짤라 리스트를 만든다. |
operator fun CharSequence.contains( other: CharSequence, ignoreCase: Boolean = false ): Boolean |
문자열이 자신에게 포함되어 있는지 |
fun CharSequence.count(): Int | 스트링길이 |
fun String.drop(n: Int): String | 앞 문자를 n개 지운 스트링을 리턴한다 |
fun String.dropLast(n: Int): String | 마지막 문자부터 n개 지운 스트링을 리턴한다. |
fun String.dropWhile(predicate: (Char) -> Boolean): String | 앞에서 부터 조건대로 문자를 제거 |
fun String.dropLastWhile( predicate: (Char) -> Boolean ): String |
뒤에서 부터 조건대로 문자를 제거 |
val string = "<<<First Grade>>>"
println(string.drop(6)) // st Grade>>>
println(string.dropLast(6)) // <<<First Gr
println(string.dropWhile { !it.isLetter() }) // First Grade>>>, 앞쪽 문자가 아닌걸 제거
println(string.dropLastWhile { !it.isLetter() }) // <<<First Grade, 뒤쪽 문자가 아닌걸 제거
fun String.filter(predicate: (Char) -> Boolean): String | Returns a string containing only those characters from the original string that match the given predicate. |
fun String.filterIndexed( predicate: (index: Int, Char) -> Boolean ): String |
Returns a string containing only those characters from the original string that match the given predicate. |
fun String.filterNot(predicate: (Char) -> Boolean): String | Returns a string containing only those characters from the original string that do not match the given predicate. |
fun CharSequence.find(predicate: (Char) -> Boolean): Char? | find: Returns the first character matching the given predicate, or null if no such character was found. |
fun CharSequence.first(): Char | Returns the first character. |
fun CharSequence.firstOrNull(): Char? | Returns the first character, or null if the char sequence is empty. |
fun CharSequence.isEmpty(): Boolean | Returns true if this char sequence is empty (contains no characters). |
operator fun CharSequence.iterator(): CharIterator | Iterator for characters of the given char sequence. |
fun CharSequence.lines(): List<String> | Splits this char sequence to a list of lines delimited by any of the following character sequences: CRLF, LF or CR. |
fun <R> CharSequence.map(transform: (Char) -> R): List<R> | map: Returns a list containing the results of applying the given transform function to each character in the original char sequence. |
fun <R : Comparable<R>> any_iterable<R>.maxOf(selector: (Char) -> R | maxOf: Returns the largest value among all values produced by selector function applied to each character in the char sequence. |
fun <R : Comparable<R>> any_iterable<R>.minOf(selector: (Char) -> R | minOf: Returns the smallest value among all values produced by selector function applied to each character in the char sequence. |
끝이 없다. 더 보고 싶은 분은 아래 코틀린 사이트에서 공부하시길
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/
String - Kotlin Programming Language
kotlinlang.org
'Kotlin > String' 카테고리의 다른 글
CharSequence (0) | 2022.09.13 |
---|---|
문자열 클래스 String, StringBuffer, StringBuilder (1) | 2022.09.13 |
StringBuilder (0) | 2022.09.13 |