回答編集履歴
3
対案を提示
answer
CHANGED
@@ -31,4 +31,39 @@
|
|
31
31
|
[Tablet, SmartPhone, Notebook, MobilePhone]
|
32
32
|
```
|
33
33
|
|
34
|
-
http://docs.oracle.com/javase/jp/7/api/java/util/Collections.html#reverse(java.util.List)
|
34
|
+
http://docs.oracle.com/javase/jp/7/api/java/util/Collections.html#reverse(java.util.List)
|
35
|
+
|
36
|
+
## 対案 : ソートを1回だけ実行する
|
37
|
+
swordone様のご指摘を受け、ソート処理を1回で済ませるプログラムを以下に示します。
|
38
|
+
`Collections.reverseOrder()`メソッドを使用しております。
|
39
|
+
```java
|
40
|
+
import java.util.ArrayList;
|
41
|
+
import java.util.Collections;
|
42
|
+
import java.util.Comparator;
|
43
|
+
import java.util.List;
|
44
|
+
|
45
|
+
public class Main {
|
46
|
+
|
47
|
+
public static void main(String[] args) {
|
48
|
+
List<String> devicesList = new ArrayList<String>();
|
49
|
+
devicesList.add("SmartPhone");
|
50
|
+
devicesList.add("Tablet");
|
51
|
+
devicesList.add("MobilePhone");
|
52
|
+
devicesList.add("Notebook");
|
53
|
+
|
54
|
+
System.out.println(devicesList);
|
55
|
+
|
56
|
+
Comparator<String> reverseOrder = Collections.reverseOrder();
|
57
|
+
Collections.sort(devicesList, reverseOrder);
|
58
|
+
System.out.println(devicesList);
|
59
|
+
}
|
60
|
+
|
61
|
+
}
|
62
|
+
```
|
63
|
+
実行結果
|
64
|
+
```
|
65
|
+
[SmartPhone, Tablet, MobilePhone, Notebook]
|
66
|
+
[Tablet, SmartPhone, Notebook, MobilePhone]
|
67
|
+
```
|
68
|
+
|
69
|
+
http://docs.oracle.com/javase/jp/7/api/java/util/Collections.html#reverseOrder(java.util.Comparator)
|
2
文言を修正
answer
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
|
1
|
+
`Collections.reverse()`メソッドを使用すれば、`Comparator`クラスを実装しなくても実現できます。
|
2
2
|
```java
|
3
3
|
import java.util.ArrayList;
|
4
4
|
import java.util.Collections;
|
1
リンクを追記
answer
CHANGED
@@ -29,4 +29,6 @@
|
|
29
29
|
[SmartPhone, Tablet, MobilePhone, Notebook]
|
30
30
|
[MobilePhone, Notebook, SmartPhone, Tablet]
|
31
31
|
[Tablet, SmartPhone, Notebook, MobilePhone]
|
32
|
-
```
|
32
|
+
```
|
33
|
+
|
34
|
+
http://docs.oracle.com/javase/jp/7/api/java/util/Collections.html#reverse(java.util.List)
|