どうも、ちょげ(@chogetarou)です。
MutableList(ミュータブルリスト)を並び替えてソートする方法を紹介します。
Listの場合
昇順

List(リスト)を昇順にソートする方法は、2つあります。
sorted()
1つは、sorted()を使う方法です。
具体的な方法としては、「list.sorted()
」のように、ドットでListからsorted()を呼び出します。
//list=対象のList
val result: List<T> = list.sorted()
上記のsorted()は、呼び出したList(リスト)を昇順に並び替えたListを生成します。
使用例
fun main() {
val numbers = listOf(5, 2, 4, 3, 1)
val result: List<Int> = numbers.sorted()
println(result)
}
出力:
[1, 2, 3, 4, 5]
sortedBy()
もう1つは、sortedBy()を使う方法です。
まず、ListからsortedBy{}を呼び出します。
そして、sortedBy{}のクロージャー内に、比較する値を指定します。
//list=対象のList, {}内に並び替える際、比較する値を指定
val result: List<T> = list.sortedBy { it }
上記のsortedBy{}は、呼び出したList(リスト)を比較する値で昇順に並び替えたListを生成します。
使用例
fun main() {
val list = listOf("DEF", "A", "GHIJ","BC")
val result: List<String> = list.sortedBy{ it.length }
println(result)
}
出力:
[A, BC, DEF, GHIJ]
降順

List(リスト)を降順にソートする方法は、4つあります。
sortedDescending()
1つは、sortedDescending()を使う方法です。
具体的な方法としては、「list.sortedDescending()
」のように、ドットでListからsortedDescending()を呼び出します。
//list=対象のList
val result: List<T> = list.sortedDescending()
上記のsortedDescending()は、呼び出したList(リスト)を降順に並び替えたListを生成します。
使用例
fun main() {
val numbers = listOf(5, 2, 4, 3, 1)
val result: List<Int> = numbers.sortedDescending()
println(result)
}
出力:
[5, 4, 3, 2, 1]
sortedByDescending()
もう1つは、sortedByDescending()を使う方法です。
まず、ListからsortedByDescending{}を呼び出します。
そして、sortedByDescending{}のクロージャー内に、比較する値を指定します。
//list=対象のList, {}内に並び替える際、比較する値を指定
val result: List<T> = list.sortedByDescending { it.length }
上記のsortedByDescending{}は、呼び出したList(リスト)を比較する値で降順に並び替えます。
使用例
fun main() {
val list = listOf("DEF", "A", "GHIJ","BC")
//文字列の長さで降順にソート
val result: List<String> = list.sortedByDescending { it.length }
println(result)
}
出力:
[GHIJ, DEF, BC, A]
MutableListの場合
昇順

MutableList(ミュータブルリスト)を昇順にソートする方法は、4つあります。
sort()
1つ目は、sort()を使う方法です。
具体的な方法としては、「list.sort()
」のように、ドットでMutableListからsort()を呼び出します。
//list=対象のMutableList
list.sort()
上記のsort()は、呼び出したMutableList(ミュータブルリスト)を昇順に並び替えます。
使用例
fun main() {
val numbers = mutableListOf(5, 2, 4, 3, 1)
numbers.sort()
println(numbers)
}
出力:
[1, 2, 3, 4, 5]
sorted()
2つ目は、sorted()を使う方法です。
具体的な方法としては、「list.sorted()
」のように、ドットでMutableListからsorted()を呼び出します。
//list=対象のMutableList
val result: List<T> = list.sorted()
上記のsorted()は、呼び出したMutableList(ミュータブルリスト)を昇順に並び替えたListを生成します。
また、sorted()は、呼び出したMutableListに影響を与えません。
使用例
fun main() {
val numbers = mutableListOf(5, 2, 4, 3, 1)
val result: List<Int> = numbers.sorted()
println(result)
}
出力:
[1, 2, 3, 4, 5]
sortBy()
3つ目は、sortBy()を使う方法です。
まず、MutableListからsortBy{}を呼び出します。
そして、sortBy{}のクロージャー内に、比較する値を指定します。
//list=対象のMutableList, {}内に並び替える際、比較する値を指定
list.sortBy { it }
上記のsortBy{}は、呼び出したMutableList(ミュータブルリスト)を比較する値で昇順に並び替えます。
使用例
fun main() {
val numbers = mutableListOf(5, 2, 4, 3, 1)
numbers.sortBy { it }
println(numbers)
}
出力:
[1, 2, 3, 4, 5]
sortedBy()
4つ目は、sortedBy()を使う方法です。
まず、MutableListからsortedBy{}を呼び出します。
そして、sortedBy{}のクロージャー内に、比較する値を指定します。
//list=対象のMutableList, {}内に並び替える際、比較する値を指定
val result: List<T> = list.sortedBy { it }
上記のsortedBy{}は、呼び出したMutableList(ミュータブルリスト)を比較する値で昇順に並び替えます。
使用例
fun main() {
val list = mutableListOf("DEF", "A", "GHIJ","BC")
val result: List<String> = list.sortedBy { it.length }
println(result)
}
出力:
[A, BC, DEF, GHIJ]
降順

MutableList(ミュータブルリスト)を降順にソートする方法は、4つあります。
sortDescending()
1つ目は、sortDescending()を使う方法です。
具体的な方法としては、「list.sortDescending()
」のように、ドットでMutableListからsortDescending()を呼び出します。
//list=対象のMutableList
list.sortDescending()
上記のsortDescending()は、呼び出したMutableList(ミュータブルリスト)を降順に並び替えます。
使用例
fun main() {
val numbers = mutableListOf(5, 2, 4, 3, 1)
numbers.sortDescending()
println(numbers)
}
出力:
[5, 4, 3, 2, 1]
sortedDescending()
2つ目は、sortedDescending()を使う方法です。
具体的な方法としては、「list.sortedDescending()
」のように、ドットでMutableListからsortedDescending()を呼び出します。
//list=対象のMutableList
val result: List<T> = list.sortedDescending()
上記のsortedDescending()は、呼び出したMutableList(ミュータブルリスト)を降順に並び替えたListを生成します。
また、sortedDescending()は、呼び出したMutableListに影響を与えません。
使用例
fun main() {
val numbers = mutableListOf(5, 2, 4, 3, 1)
val result: List<Int> = numbers.sortedDescending()
println(result)
}
出力:
[5, 4, 3, 2, 1]
sortByDescending()
3つ目は、sortByDescending()を使う方法です。
まず、MutableListからsortByDescending{}を呼び出します。
そして、sortByDescending{}のクロージャー内に、比較する値を指定します。
//list=対象のMutableList, {}内に並び替える際、比較する値を指定
list.sortByDescending { it }
上記のsortByDescending{}は、呼び出したMutableList(ミュータブルリスト)を比較する値で降順に並び替えます。
使用例
fun main() {
val list = mutableListOf("DEF", "A", "GHIJ","BC")
//文字列の長さで降順にソート
list.sortByDescending { it.length }
println(list)
}
出力:
[GHIJ, DEF, BC, A]
sortedByDescending()
4つ目は、sortedByDescending()を使う方法です。
まず、MutableListからsortedByDescending{}を呼び出します。
そして、sortedByDescending{}のクロージャー内に、比較する値を指定します。
//list=対象のMutableList, {}内に並び替える際、比較する値を指定
val result: List<T> = list.sortedByDescending { it.length }
上記のsortedByDescending{}は、呼び出したMutableList(ミュータブルリスト)を比較する値で降順に並び替えます。
使用例
fun main() {
val list = mutableListOf("DEF", "A", "GHIJ","BC")
//文字列の長さで降順にソート
val result: List<String> = list.sortedByDescending { it.length }
println(result)
}
出力:
[GHIJ, DEF, BC, A]
まとめ
List(リスト)をソートする方法は、昇順と降順のそれぞれに2つあります。
- 昇順にソート
- sorted()を使う方法
val result: List<T> = list.sorted()
- sortedBy()を使う方法
val result: List<T> = list.sortedBy { it }
- sorted()を使う方法
- 降順にソート
- sortedDescending()を使う方法
val result: List<T> = list.sortedDescending()
- sortedByDescending()を使う方法
val result: List<T> = list.sortedByDescending { it.length }
- sortedDescending()を使う方法
MutableList(ミュータブルリスト)をソートする方法は、昇順と降順のそれぞれに4つあります。
- 昇順にソート
- sort()を使う方法
list.sort()
- sorted()を使う方法
val result: List<T> = list.sorted()
- sortBy()を使う方法
list.sortBy { it }
- sortedBy()を使う方法
val result: List<T> = list.sortedBy { it }
- sort()を使う方法
- 降順にソート
- sortDescending()を使う方法
list.sortDescending()
- sortedDescending()を使う方法
val result: List<T> = list.sortedDescending()
- sortByDescending()を使う方法
list.sortByDescending { it }
- sortedByDescending()を使う方法
val result: List<T> = list.sortedByDescending { it.length }
- sortDescending()を使う方法
コメント