tonykang22 / study

0 stars 0 forks source link

[Kotlin & Spring] 01. Kotlin 컬렉션 #110

Open tonykang22 opened 1 year ago

tonykang22 commented 1 year ago

01. Kotlin 컬렉션

컬렉션 타입

컬렉션에 대해



컬렉션 생성 방법

val currencyList: List<String> = listOf("달러", "유료", "원 ")



val mutableCurrencyList = mutableListOf<String>()
mutableCurrentList.add("달러")
mutableCurrentList.add("유로")
mutableCurrentList.add("원")



val mutableCurrencyList = mutableListOf<String>().apply {
    add("달러")
    add("유로")
    add("원")
}



val numberSet = setOf(1, 2, 3, 4)



val mutableSet = mutableSetOf<Int>()



val numberMap = mapOf("one" to 1, "two" to 2)



val mutableNumberMap = mutableMapOf<String, Int>()
mutableNumberMap["one"] = 1
mutableNumberMap["two"] = 2
mutableNumberMap["three"] = 3



val numberList: List<Int> = buildList {
    // buildMap 내부에서는 MutableMap
    add(1)
    add(2)
    add(3)
}



val linkedList = LinkedList<Int>().apply {
    add(1)
    add(2)
    add(3)
}



컬렉션 반복하기

val iterator = currencyList.iterator()
while (iterator.hasNext()) {
    println(iterator.next())
}



for (currency in currencyList) {
    print(currency)
}



currency.forEach {
    println(it)
}



val lowerList = listOf("a", "b", "c", "d")
val upperList = mutableListOf<String>()

for (lowerCase in lowerList) {
    upperList.add(lowerCase.upperCase())
}

println(upperList)
// [A, B, C, D]



val upperList = lowerList.map { it.upperCase() }
println(upperList)
// [A, B, C, D]



val filteredList = mutableListOf<String>()
for (upperCase in upperList) {
    if (upperCase == "A" || upperCase == "C") {
        filteredList.add(upperCase)
    }
}
println(filteredList)
// [A, C]



val filteredList = upperList.filter { it == "A" || it == "C" }
println(filteredList)
// [A, C]



val filteredList = upperList.stream().filter { it == "A" || it == "C" }

println(filteredList)
// java.util.stream.ReferencePipeline$2@77b52d12
val filteredList = upperList.stream()
            .filter { it == "A" || it == "C" }
            .collect(Collectors.toList())

println(filteredList)
// [A, C]



val filteredList = upperList
            .asSequence()
            .filter { it == "A" || it == "C" }

println(filteredList)
// kotlin.sequences.FilteringSequence@7f560810



val filteredList = upperList
            .asSequence()
            .filter { it == "A" || it == "C" }
            .toList()

println(filteredList)
// [A, C]



추가