20231213 / 타입확인 / Pair, Triple
by jeongminy■ 자료형의 타입 확인
- 코틀린은 is 키워드를 활용해서 자료형의 타입을 확인할 수 있어요
fun main() {
var name = "aaa"
if(name is String) {
println("name은 String 타입입니다")
} else {
println("name은 String 타입이 아닙니다")
}
}
■ 여러 인스턴스를 리턴
- 메소드는 기본적으로 하나의 데이터를 리턴해요
- 두 개 이상의 데이터를 포함하는 데이터클래스를 설계하고 인스턴스를 리턴하면 가능해요
- 매번 불필요한 클래스를 만드는 행위는 비효율적이예요
■ Pair : 두 개의 인스턴스 리턴
- 설명
Kotlin에서 Pair는 두 개의 값을 저장하거나 반환하는 데 사용되는 표준 라이브러리 클래스입니다.
Pair는 동일하거나 다른 데이터 유형의 두 값을 저장할 수 있습니다.
- 상황
두 개의 값을 함께 반환해야 하는 경우
두 개의 값을 함께 저장해야 하는 경우
두 개의 값 사이에 관계가 있는 경우
- 사용 예
Map의 키와 값을 저장하는 데 사용
List의 요소를 저장하는 데 사용
for 루프에서 두 개의 값을 동시에 처리하는 데 사용
더보기
fun main() {
var chicken = Chicken()
var eggs = chicken.getEggs()
var listEggs = eggs.toList()
// first, second로 관리
// var firstEgg = eggs.first
// var secondEgg = eggs.second
// 리스트로 관리
var firstEgg = listEggs[0]
var secondEgg = listEggs[1]
println("달걀의 종류는 ${eggs} 입니다.")
println("리스트 달걀의 종류는 ${listEggs} 입니다.")
println("첫번째 달걀의 종류는 ${firstEgg} 입니다.")
println("두번째 달걀의 종류는 ${secondEgg} 입니다.")
}
class Chicken {
fun getEggs(): Pair<String, String> {
var eggs = Pair("달걀", "맥반석")
return eggs
}
}
■ Triple : 세 개의 인스턴스 리턴
- 설명
Kotlin에서 Triple은 세 개의 값을 저장하거나 반환하는 데 사용되는 표준 라이브러리 클래스입니다.
Triple은 동일하거나 다른 데이터 유형의 세 개의 값을 저장할 수 있습니다.
-상황
세 개의 값을 함께 반환해야 하는 경우
세 개의 값을 함께 저장해야 하는 경우
세 개의 값 사이에 관계가 있는 경우
- 사용 예
Map의 키와 값, 그리고 추가 정보를 저장하는 데 사용
List의 요소를 저장하는 데 사용
for 루프에서 세 개의 값을 동시에 처리하는 데 사용
더보기
fun main() {
var chicken = Chicken()
var eggs = chicken.getThreeEggs()
var listEggs = eggs.toList()
// first, second, third로 관리
// var firstEgg = eggs.first
// var secondEgg = eggs.second
// var eggTime = eggs.third
// 리스트로 관리
var firstEgg = listEggs[0]
var secondEgg = listEggs[1]
var eggTime = listEggs[2]
println("달걀의 정보는 ${eggs} 입니다.")
println("리스트 달걀의 정보는 ${listEggs} 입니다.")
println("첫번째 달걀의 종류는 ${firstEgg} 입니다.")
println("두번째 달걀의 종류는 ${secondEgg} 입니다.")
println("달걀은 ${eggTime}에 나왔습니다.")
}
class Chicken {
fun getTwoEggs(): Pair<String, String> {
var eggs = Pair("달걀", "맥반석")
return eggs
}
fun getThreeEggs(): Triple<String, String, Int> {
var eggs = Triple("달걀", "맥반석", 20230101)
return eggs
}
}
참고 : https://juahnpop.tistory.com/241
'📒 TIL - Today I Learned' 카테고리의 다른 글
20231214 / 확장함수 (0) | 2023.12.14 |
---|---|
20231213 / Scope Functions / let, with, also, apply, run (0) | 2023.12.13 |
20231212 / 업 캐스팅과 다운 캐스팅 (0) | 2023.12.12 |
20231211 / 키오스크 만들기 (0) | 2023.12.11 |
20231209 / 계산기 코드분석 / 다형성 (1) | 2023.12.09 |
블로그의 정보
꿈틀꿈틀 개발일기
jeongminy