0
0
Kotlinprogramming~5 mins

Star projection for unknown types in Kotlin - Cheat Sheet & Quick Revision

Choose your learning style9 modes available
Recall & Review
beginner
What is a star projection in Kotlin generics?
A star projection is a way to say "I don't know the exact type" for a generic parameter. It uses the * symbol to represent an unknown type safely.
Click to reveal answer
beginner
How do you write a star projection for a generic type List in Kotlin?
You write it as List<*> which means a list of some unknown type.
Click to reveal answer
intermediate
Why use star projection instead of a raw type in Kotlin?
Star projection keeps type safety by acknowledging unknown types, while raw types can cause unsafe operations and errors.
Click to reveal answer
intermediate
What is the difference between List<*> and List in Kotlin?
List<*> means a list of some unknown type, while List means a list that can hold any type including null. The first is safer for reading unknown types.
Click to reveal answer
beginner
Can you add elements to a List<*> in Kotlin?
No, you cannot add elements to a List<*> because the exact type is unknown, so adding could break type safety.
Click to reveal answer
What does List<*> mean in Kotlin?
AA list with an unknown element type
BA list of Any type elements
CA list that can only hold null
DA list with no elements
Can you add an element to a List<*> in Kotlin?
ANo, because the element type is unknown
BYes, any element can be added
COnly null can be added
DOnly elements of type Any can be added
Which symbol is used for star projection in Kotlin generics?
A&
B?
C#
D*
Why is star projection safer than using raw types?
ABecause it allows adding any type
BBecause it converts all types to Any
CBecause it preserves type safety by acknowledging unknown types
DBecause it disables generics
What is the difference between List<*> and List?
AList<*> can hold any type; List<Any?> is unknown
BList<*> is unknown type; List<Any?> can hold any type including null
CBoth are exactly the same
DList<*> can only hold null; List<Any?> cannot
Explain what star projection means in Kotlin generics and why it is useful.
Think about how Kotlin handles unknown generic types safely.
You got /4 concepts.
    Describe the difference between List<*> and List in Kotlin and when you might use each.
    Consider what each means for the types of elements allowed.
    You got /4 concepts.