Sort a list of object identifiers: Difference between revisions
Content added Content deleted
m (→{{header|Factor}}: simplify) |
|||
Line 467: | Line 467: | ||
public static void main(String[] args) { |
public static void main(String[] args) { |
||
String dot = "\\."; |
final String dot = "\\."; |
||
Comparator<String> oids_comparator = (o1, o2) -> { |
final Comparator<String> oids_comparator = (o1, o2) -> { |
||
String[] o1Numbers = o1.split(dot), o2Numbers = o2.split(dot); |
final String[] o1Numbers = o1.split(dot), o2Numbers = o2.split(dot); |
||
for (int i = 0; ; i++) { |
for (int i = 0; ; i++) { |
||
if (i == o1Numbers.length && i == o2Numbers.length) |
if (i == o1Numbers.length && i == o2Numbers.length) |
||
Line 478: | Line 478: | ||
if (i == o2Numbers.length) |
if (i == o2Numbers.length) |
||
return 1; |
return 1; |
||
int nextO1Number = Integer.valueOf(o1Numbers[i]), nextO2Number = Integer.valueOf(o2Numbers[i]); |
final int nextO1Number = Integer.valueOf(o1Numbers[i]), nextO2Number = Integer.valueOf(o2Numbers[i]); |
||
int result = Integer.compare(nextO1Number, nextO2Number); |
final int result = Integer.compare(nextO1Number, nextO2Number); |
||
if (result != 0) |
if (result != 0) |
||
return result; |
return result; |