Sergio C.
11/18/2021, 11:05 PMval list = mutableListOf<String>("10", "0.1", "0.01", "1")
list.sortBy { // default kotlin in-place sorter
it
}
list.sortByStringValue {
if (it.toDoubleOrNull() == null) {
it
} else {
it.toDouble()
}
}
Javier
11/18/2021, 11:12 PMval list = listOf("10", "0.1", "0.01", "1")
list.sortByStringValue()
fun List<String>.sortByStringValue() = mapNotNull(String::toDoubleOrNull).sorted()
Javier
11/18/2021, 11:12 PM[0.01, 0.1, 1.0, 10.0]
Javier
11/18/2021, 11:12 PMSergio C.
11/18/2021, 11:14 PMSergio C.
11/18/2021, 11:15 PMSergio C.
11/18/2021, 11:15 PMSergio C.
11/18/2021, 11:15 PMSergio C.
11/18/2021, 11:22 PMfun List<String>.sortByStringValue(): List<String> {
if (size > 1) {
return if (first().toDoubleOrNull() == null) {
sortedBy { it }
} else {
sortedBy { it.toDoubleOrNull() }
}
}
return this
}
Javier
11/18/2021, 11:23 PMJavier
11/18/2021, 11:23 PMSergio C.
11/18/2021, 11:24 PMJavier
11/18/2021, 11:24 PMJavier
11/18/2021, 11:24 PMSergio C.
11/18/2021, 11:25 PMSergio C.
11/18/2021, 11:25 PMSergio C.
11/18/2021, 11:26 PM