Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- SoftwareArchitecture
- Kotlin
- MVVM
- 시퀀스다이어그램
- 구조패턴
- android
- RxJava
- threadsafety
- stateflow
- 싱글톤패턴
- 아키텍쳐패턴
- SharedFlow
- 클래스다이어그램
- decoding
- 옵서버
- NetworkCommunication
- SDLC
- ImageView
- ClientServerArchitecture
- scaletype
- 이미지찌그러짐
- DistributedSystems
- LayeredArchitecture
- 이미지짤림
- 전역상태관리
- LazyInitialization
- SystemDesign
- 유스케이스다이어그램
- 행위패턴
- ArchitecturePatterns
Archives
- Today
- Total
Kyung_Development
kotlin 문자열 처리 종류별, .last() 본문
Kotlin에서 문자열을 처리하는 다양한 방법과 관련 메서드/기능을 아래에 정리했습니다. 각 방법별로 예시도 함께 제공합니다.
1. 문자열 선언
- Raw String (다중 라인 지원)
- Escaped String
// Escaped String
val singleLine = "Hello, Kotlin!\nWelcome to string handling."
// Raw String
val rawString = """
Hello, Kotlin!
This is a raw string example.
You can preserve line breaks.
""".trimIndent()
2. 문자열 템플릿
- 변수나 표현식을 문자열에 직접 삽입 가능.
val name = "Kotlin"
val version = 1.8
val message = "Hello, $name! Version: $version"
val calculation = "2 + 2 = ${2 + 2}" // 표현식 삽입
println(message)
println(calculation)
3. 문자열 길이
- length 속성을 사용.
val str = "Kotlin"
println("Length of '$str': ${str.length}")
4. 문자열 대소문자 변환
- toUpperCase() / toLowerCase() 사용.
val text = "Hello Kotlin"
println(text.toUpperCase()) // HELLO KOTLIN
println(text.toLowerCase()) // hello kotlin
5. 문자열 비교
- ==와 equals를 사용.
- equals는 대소문자 무시 여부 설정 가능.
val str1 = "Kotlin"
val str2 = "kotlin"
println(str1 == str2) // false
println(str1.equals(str2, ignoreCase = true)) // true
6. 부분 문자열 추출
- substring(startIndex) 또는 substring(startIndex, endIndex).
val text = "Hello, Kotlin!"
println(text.substring(7)) // Kotlin!
println(text.substring(0, 5)) // Hello
7. 문자열 포함 여부
- contains, startsWith, endsWith.
val text = "Kotlin programming"
println(text.contains("program")) // true
println(text.startsWith("Kot")) // true
println(text.endsWith("ing")) // true
8. 문자열 분리
- split 사용.
val csv = "apple,banana,orange"
val fruits = csv.split(",")
println(fruits) // [apple, banana, orange]
9. 문자열 합치기
- + 연산자 또는 joinToString.
val part1 = "Hello"
val part2 = "World"
println(part1 + ", " + part2 + "!") // Hello, World!
val words = listOf("Kotlin", "is", "fun")
println(words.joinToString(" ")) // Kotlin is fun
10. 문자열 치환
- replace, replaceFirst.
val text = "Kotlin is a great language"
println(text.replace("great", "fantastic")) // Kotlin is a fantastic language
println(text.replaceFirst("is", "was")) // Kotlin was a great language
11. 공백 제거
- trim, trimStart, trimEnd.
val text = " Kotlin "
println(text.trim()) // Kotlin
println(text.trimStart()) // "Kotlin "
println(text.trimEnd()) // " Kotlin"
12. 빈 문자열 체크
- isEmpty와 isBlank.
val emptyString = ""
val blankString = " "
println(emptyString.isEmpty()) // true
println(blankString.isBlank()) // true
13. 문자열 반복
- repeat.
val repeated = "Kotlin".repeat(3)
println(repeated) // KotlinKotlinKotlin
14. 문자열 패턴 매칭
- 정규식 사용.
val text = "123-456-7890"
val regex = "\\d{3}-\\d{3}-\\d{4}".toRegex()
println(text.matches(regex)) // true
15. 문자열 변환
- 숫자 또는 다른 형식으로 변환.
val numberString = "123"
val number = numberString.toInt()
println(number + 1) // 124
val floatString = "3.14"
val pi = floatString.toDouble()
println(pi) // 3.14
Kotlin에서 .last()는 **컬렉션(Collection) 또는 문자열(String)**의 마지막 요소를 반환하는 함수입니다. 아래에 문자열에 .last()를 사용하는 방법과 예시를 정리했습니다.
1. last() 사용 예시
- 문자열의 마지막 문자 반환.
val text = "Kotlin"
println(text.last()) // n
2. 빈 문자열에서의 동작
- 빈 문자열에서 last()를 호출하면 예외(NoSuchElementException)가 발생합니다.
- 예외 방지 방법: lastOrNull()을 사용하면 안전하게 처리 가능합니다.
val emptyText = ""
// println(emptyText.last()) // 예외 발생!
println(emptyText.lastOrNull()) // null
3. 조건을 사용한 last
- 특정 조건을 만족하는 마지막 요소를 가져오고 싶다면 last { predicate }를 사용합니다.
val text = "Kotlin Programming"
val lastVowel = text.last { it in "aeiouAEIOU" }
println(lastVowel) // i
4. 문자열에서 인덱스와 함께 사용
- 문자열에서 마지막 문자의 인덱스가 필요한 경우 text.length - 1을 활용.
val text = "Kotlin"
val lastChar = text[text.length - 1] // 마지막 문자
println(lastChar) // n
5. last()와 lastOrNull()의 차이
- last(): 조건을 만족하는 요소가 없거나, 컬렉션/문자열이 비어있으면 예외 발생.
- lastOrNull(): 조건을 만족하는 요소가 없거나, 컬렉션/문자열이 비어있으면 null 반환.
val text = "Kotlin"
println(text.lastOrNull { it == 'x' }) // null
println(text.last { it in "Kotlin" }) // n
6. .last()와 컬렉션과의 연관성
- 문자열뿐만 아니라, 리스트(List), 배열(Array) 같은 컬렉션에서도 last()를 동일하게 사용할 수 있습니다.
val list = listOf(1, 2, 3, 4)
println(list.last()) // 4
val array = arrayOf("A", "B", "C")
println(array.last()) // C
요약
- last(): 마지막 요소를 반환.
- lastOrNull(): 안전한 대안으로, 요소가 없을 경우 null 반환.
- 조건 기반 last {}: 특정 조건을 만족하는 마지막 요소를 반환.
'android > Kotlin' 카테고리의 다른 글
Android SharedPreferences로 데이터 누적 및 카운트 관리하기 (0) | 2025.02.06 |
---|---|
WorkManager 상태 확인 (0) | 2025.01.21 |
Kotlin 컬렉션 완벽 가이드: List, 반복 (2) | 2024.11.21 |