回答編集履歴

2

Comparatorn

2016/10/27 01:26

投稿

swordone
swordone

スコア20649

test CHANGED
@@ -7,3 +7,41 @@
7
7
  数値比較したいなら、Integer.parseIntなどで数値に変換してから比較しないとだめですが、
8
8
 
9
9
  今やっているようなComparatorで画一的に操作するのは難しくなりますね。
10
+
11
+
12
+
13
+ そもそもComparatorの使い方が変です。
14
+
15
+ 型パラメータとともに使ってこそのジェネリクスです。
16
+
17
+ ```java
18
+
19
+ static public class TheComparator implements Comparator<String[]> {
20
+
21
+
22
+
23
+ /** ソート対象のカラムの位置 */
24
+
25
+ private int index = 0;
26
+
27
+
28
+
29
+ /** ソートするためのカラム位置をセット */
30
+
31
+ public void setIndex( int index ) {
32
+
33
+ this.index = index;
34
+
35
+ }
36
+
37
+
38
+
39
+ public int compare(String[] a, String[] b ) {
40
+
41
+ return a[index].compareTo(b[index]);
42
+
43
+ }
44
+
45
+ }
46
+
47
+ ```

1

後半が余りいい説明になってなかったので変更

2016/10/27 01:26

投稿

swordone
swordone

スコア20649

test CHANGED
@@ -4,6 +4,6 @@
4
4
 
5
5
  「167」より「49」があとに来ます(最初の文字を比較して早いほうが先に来る)。
6
6
 
7
- 「糸(と)」より「糸電話(いとでんわ)」あとに来るのと同様
7
+ 数値比較したいなら、Integer.parseIntなどで数値に変換してから比較しないとだめが、
8
8
 
9
- 「32」より「324」があとに来ます。
9
+ 今やっているうなComparatorで画一的に操作するのは難しくなります