Kotlin: matriz de generics

Estoy escribiendo un tree B, que puede tener muchas keys en un nodo, y he encontrado un problema. Cuando creo una matriz de Ints todo funciona bien:

class Node<K: Comparable<K>> (val t: Int) { val keys: Array<Int?> = Array<Int?> (t*2-1, {null}) } 

Pero quiero crear una matriz de Genéricos Ks :

 class Node<K: Comparable<K>> (val t: Int) { val keys : Array<K?> = Array<K?> (t*2-1, {null}) } 

En este caso, el comstackdor arroja este post de error:

 'Kotlin: Cannot use 'K' as reified type parameter. Use a class instead.' 

La pregunta es ¿Cómo crear una matriz de generics?

UPD: ¡ Thx para todas las respuestas! Parece que MutableList es una buena solución para mi objective.

Puede usar List<K> lugar, no requiere que tenga types reified .

Para usar parameters generics con Array<K> , necesita el parámetro genérico para ser reified (para que pueda get su class)

No puede usar reified con classs, solo con funciones, y las funciones deben estar en inline

Por lo tanto, sugiero que use una class más tarde posible, con types generics concretos o no reified .

Mientras tanto, puedes usar funciones como estas

 inline fun <reified K : Comparable<K>> computeKeys(t: Int): Array<K?> = Array(t * 2 - 1) { null } 
  • La verificación de tipo se ha ejecutado en un recursivo en kotlin
  • =? UTF? Q? Cadena de grupos de noticias de ASCII a Unicode
  • Necesito una manera de cambiar de forma dinámica y progama el background de un ImageView en una vista de reciclador
  • ¿Cómo probar idiomáticamente cadenas no nulas y no vacías en Kotlin?
  • La biblioteca de Android no puede comstackr kotlin
  • Agregar consultas API de REST de Twitter personalizadas usando Kotlin
  • Kotlin: ¿Cómo se accede a los methods get y setValue de un delegado?
  • Métodos de ciclo de vida en lenguajes tipados estáticamente
  • Cómo agregar múltiples datos históricos a GoogleFit
  • Cómo crear instancia de class genérica pasando una reference de método en constructor con kotlin
  • Resaltado de syntax de ojo de pez / crisol para Kotlin