どうも、ちょげ(@chogetarou)です。
for文を使ってリスト(List)を逆順にソートする方法を紹介します。
方法
for文を使ってリスト(List)を逆順にソートするには、add()とremove()を使います。
まず、for文をリスト(List)の長さでループします。
次に、ループ処理で、リストからadd()を呼び出します。
add()の第1引数にループ変数を指定し、第2引数でリストからremove()を呼び出します。
そして、remove()の引数にリストの末尾のインデックスを指定します。
//list=対象のリスト
for (int i = 0, j = list.size() -1; i < j; i++) {
list.add(i, list.remove(j));
}
上記のfor文は、ループしたリスト(List)を逆順にソートします。
使用例
import java.util.ArrayList;
public class Main {
public static void main(String[] args) throws Exception {
ArrayList<Integer> nums = new ArrayList<Integer>(5);
nums.add(1);
nums.add(2);
nums.add(3);
nums.add(4);
nums.add(5);
for (int i = 0, j = nums.size() -1; i < j; i++) {
nums.add(i, nums.remove(j));
}
System.out.println(nums);
}
}
出力:
[5, 4, 3, 2, 1]
コメント