发新话题
移动帖子 加入精华 加入置顶 加入收藏 关注此帖

字符串数字的自定义排序问题





字符串数字的自定义排序问题

数组为字符串,但都是数字,希望按照数字排序而不是字母排序

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;

public class T {
  public static void main(String[] args) {
    ArrayList list = new ArrayList();
    list.add("92.8");
    list.add("68.9");
    list.add("168.61");
    list.add("242");
    list.add("317");
    list.add("105");
    // 字符串排序
    Collections.sort(list);
    System.out.println(list.toString()); // [105, 168.61, 242, 317, 68.9, 92.8]
    Collections.sort(list, new Comparator() {
      @Override
      public int compare(Object o1, Object o2) {
        return new Double((String) o1).compareTo(new Double((String) o2));
      }
    });
    System.out.println(list.toString()); // [68.9, 92.8, 105, 168.61, 242, 317]
  }
}
快乐渡过每一天,减肥坚持每一天



编辑 回复 快速回复 TOP


Re:字符串数字的自定义排序问题

为什么我的环境下 19行报错??? 如下:
Multiple markers at this line
- implements java.util.Comparator.compare
- The method compare(Object, Object) of type new Comparator(){} must override a
superclass method
红色
编辑 回复 快速回复 TOP
发新话题