Advanced Kotlin
Q95 / 100

How does Kotlin's type projection work with in/out variance?

Correct! Well done.

Incorrect.

The correct answer is B) out T (covariant projection) allows reads but not writes; in T (contravariant projection) allows writes but restricts reads — use-site variance

B

Correct Answer

out T (covariant projection) allows reads but not writes; in T (contravariant projection) allows writes but restricts reads — use-site variance

Explanation

fun copy(from: Array<out T>, to: Array<in T>) — from is covariant (read-only), to is contravariant (write-only). This is use-site variance, complementing declaration-site variance.

Progress
95/100