Ordene la lista de matrices de Kotlin según los valores de otra lista de matrices

hodokeg
arr[0] = Name(id=122, title="title0")
arr[1] = Name(id=123, title="title1")
arr[2] = Name(id=124, title="title2")
......

Necesito ordenarlo con la siguiente matriz

arrRef[0] = "title2"
arrRef[1] = "title0"
arrRef[2] = "title1"

Resultado:

arr[0] = Name(id=124, title="title2")
arr[1] = Name(id=122, title="title0")
arr[2] = Name(id=123, title="title1")
......

En Java lo hacemos como

Collections.sort(arrRef, Comparator.comparing(s -> arr[arrRef.indexOf(s)]));
Frank Niebla

Si su lista de nombres es muy larga, debe aplicar el hash del título a su índice, ya que la invocación repetida list.indexOf(value)tiene un rendimiento deficiente para listas largas.

val names = arrayListOf(
    Name(122, "title0"),
    Name(123, "title1"),
    Name(124, "title2")
)

val titles = listOf(
    "title2",
    "title0",
    "title1"
)

val hash = titles.withIndex().associateTo(HashMap()) { it.value to it.index }

names.sortBy { hash[it.title] }

Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.

En caso de infracción, por favor [email protected] Eliminar

Editado en
0

Déjame decir algunas palabras

0Comentarios
Iniciar sesiónRevisión de participación posterior

Artículos relacionados

¿Ordenar la lista según los valores de otra lista?

Ordenar una lista de matrices según el valor de los objetos en otra lista de matrices en Java

Ordene una lista de objetos, según los valores, tomados de otra clase

Hacer referencia a los valores de una lista de matrices con los valores de otra

Repite los elementos de la lista según los valores de otra lista.

Lista de matrices R: cambie los valores según el valor y el nombre de la columna

averiguar los elementos de una lista de matrices que no está presente en otra lista de matrices

Eliminar todos los objetos de una lista de matrices que existen en otra lista de matrices

copiar una lista de matrices a otra lista de matrices en kotlin

Ordene la lista de diccionario en python según los valores y agregue los objetos ordenados a una nueva lista

¿Cómo vinculo los valores de la lista de matrices a los objetos de la clase? (Androide)

mostrar / ocultar imágenes según la lista de matrices

Ordene dos matrices según la longitud de una

Lista de representación de la lista de matrices

Actualizando la lista de matrices

¿Desde la lista de matrices cifrar todos los valores dentro de la matriz? Java

Agregar valores predefinidos a la lista de listas de matrices

no se pueden poner valores dentro de la lista de matrices

Mapeo de matrices a la lista de objetos kotlin

Cómo encontrar los valores más pequeños de la lista de matrices por columna

¿Cómo multiplico los valores en dos listas de matrices y luego las agrego a la segunda lista de matrices?

¿Cómo reemplazar el contenido de la lista de matrices con el contenido de otra lista de matrices?

Ordene una lista dependiendo de otra lista

Lista de matrices SwiftUI

Lista de matrices bidimensionales

Lista de matrices vacía

Lista de matrices

Imprimir lista de matrices

Lista de matrices Java