免責聲明:這個問題的作者在評論中解釋說,他們需要一種方法來接收vararg個列表,然后分別獲得每個列表的參數類型。 一般的答案是這是不可能的。由于Java/Kotlin中的類型擦除,運行時不知道泛型類型。Kotlin引入的reified試圖至少部分緩解這個問題,但也有其局限性。有一些方法可以實現這一點,但它們都更像是解決方案,而不是真正的解決方案: 1.不要使用vararg,而是重載函數。 inline fun <reified T1: Item> processList(list1: List<T1>) {}inline fun <reified T1: Item, T2: Item> processList(list1: List<T1>, list2: List<T2>) {}inline fun <reified T1: Item, T2: Item, T3: Item> processList(list1: List<T1>, list2: List<T2>, list3: List<T3>) {}... 聽起來真的很糟糕,但為最多10個參數編寫這樣的函數需要10分鐘,而且只需一次。許多圖書館也做類似的事情。 您可以將上述每個函數委托給一個接受KClass/Clas