The question came up when I took a closer look at kotlin .map inline function. Here's its definition
public inline fun <T, R> Iterable<T>.map(transform: (T) -> R): List<R>{
return mapTo(ArrayList<R>(collectionSizeOrDefault(10)), transform)}
In the function definition, it should return a List, which is defined in Collection.kt. However, it is returning an ArrayList, which implements a List interface in Java (List.java)
What is the relationship between Java interface and Kotlin interface ? I imagine there would be more similar examples, maybe Set, or Map?