Разбираю у себя закладки и нашла интересный вопрос: какая разница между Generic<*> и Generic<Any>? Я помню, что когда-то его задал мне мой джуниор, и я тогда очень радовалась, что мы работаем дома и было время погуглить. Мой примерный ответ ниже. :) Сначала вопрос кажется каким-то очевидным, а потом начинаешь думать и понимаешь, что всё не так уж просто и одним предложением не отделаться. Мы ведь в оба дженерика можем передать что угодно. Давайте немного вспомним Java. Там есть такая штука как List<? extends Number> — это означает, что список принимает какие-то элементы, где родитель Number. И еще есть List<? super String> — список принимает родителей String. (Пришлось даже открыть философию Java и посмотреть правильное написание. С этим котлином уже всё забылось. :D). Я написала совсем простой формулировкой, чтобы не углубляться в дженерики. Да, тут еще можно было бы рассказать про ковариантность, производителей и потребителей, но не буду. Так вот в Kotlin есть аналоги, но с более