Spec-Zone.ru › Kotlin 1.6

filterIsInstanceTo

kotlin-stdlib / kotlin.collections / filterIsInstanceTo
Требования к платформе и версии: JVM (1.0), JS (1.0), Native (1.0)
fun <reified R, C : MutableCollection<in R>> Array<*>.filterIsInstanceTo(
    destination: C
): C
fun <reified R, C : MutableCollection<in R>> Iterable<*>.filterIsInstanceTo(
    destination: C
): C

Добавляет все элементы, являющиеся экземплярами указанного типа параметра R, в заданное назначение.

import kotlin.test.*

fun main(args: Array<String>) {
//sampleStart
open class Animal(val name: String) {
    override fun toString(): String {
        return name
    }
}
class Dog(name: String): Animal(name)
class Cat(name: String): Animal(name)

val animals: List<Animal> = listOf(Cat("Scratchy"), Dog("Poochie"))
val cats = mutableListOf<Cat>()

println(cats) // []

animals.filterIsInstanceTo<Cat, MutableList<Cat>>(cats)

println(cats) // [Scratchy]
//sampleEnd
}
Требования к платформе и версии: JVM (1.0)
fun <C : MutableCollection<in R>, R> Array<*>.filterIsInstanceTo(
    destination: C, 
    klass: Class<R>
): C
fun <C : MutableCollection<in R>, R> Iterable<*>.filterIsInstanceTo(
    destination: C, 
    klass: Class<R>
): C

Добавляет все элементы, являющиеся экземплярами указанного класса, в заданное назначение.

import kotlin.test.*

fun main(args: Array<String>) {
//sampleStart
open class Animal(val name: String) {
    override fun toString(): String {
        return name
    }
}
class Dog(name: String): Animal(name)
class Cat(name: String): Animal(name)

val animals: List<Animal> = listOf(Cat("Scratchy"), Dog("Poochie"))
val cats = mutableListOf<Cat>()

println(cats) // []

animals.filterIsInstanceTo(cats, Cat::class.java)

println(cats) // [Scratchy]
//sampleEnd
}

© 2010–2020 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/filter-is-instance-to.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API