반응형
코틀린에서 명시적 형변환과 암시적 형변환을 지원한다고 해도 Any type같은 경우는 암시적 형변환이 아닌 명시적 형변환을 사용해야 합니다. 이때 as 를 이용하여 형변환을 할수있습니다.
as 사용법 : map list를 가지고 있는 map 예시
data class Person(var name:String, var number:String) //data class
var mapOfperson = mutableMapOf<String, Person>() //Person type mutable map
var mapOfMaps = mutableMapOf<String, Any>() //map 을 가지고있는 map
//두개의 map of Person
mapOfperson.put("key1",Sperson("lkh","01"))
mapOfperson.put("key2",Sperson("cjs","02"))
//map을 가지고 있는 map
mapOfMaps.put("list",mapOfperson)
//maps 에서 map을 가지고 오는 법
val getMaps = mapOfMaps.toMap() //<String, Any> 을 가지고 옴
//for 문으로 값을 꺼내기
for(show in getMaps){
var maps = show.component2() as MutableMap<String, Sperson> //형 변환
println(maps.values) //value값 확인
println(maps.keys) //value값 확인
//특정값 serch
for(show in maps){
if(show.value.name == "lkh"){ //찾을 값 검색
println(show.value)
println(show.value.name)
println(show.value.number)
}
}
'컴퓨터 언어 > 코틀린' 카테고리의 다른 글
[Kotlin] 코틀린의 조건문 및 비교 연산자 (0) | 2020.02.12 |
---|---|
[Kotiln] 타입 추론과 편리한 함수 (0) | 2020.02.12 |
[Kotiln] 형 변환 과 배열로 자료형 변경 저장법 (0) | 2020.02.12 |
[Kotiln] 코틀린 변수와 자료형 (0) | 2020.02.12 |
[Kotiln] 코틀린 개발 환경 및 장점 (0) | 2020.02.12 |