+-
java-按数字值对ArrayList进行排序
我有一个视频分辨率的ArrayList看起来像这样:

“ 1024×768”,“ 800×600”,“ 1280×1024”等

我想基于字符串的第一部分中的数值对它进行排序.
即,上面的代码看起来像这样:

“ 800×600”,“ 1024×768”,“ 1280×1024”

有没有一种快速而肮脏的方法来执行此操作,我的意思是少于2-3行代码?如果没有,正确的方法是什么?我获得的值来自对象而不是我自己的对象.它确实具有返回整数的getWidth()和getHeight()方法.

最佳答案
如果数组中的对象是具有getWidth方法的Resolution实例,则可以使用Comparator对这些对象进行排序:

Collections.sort(resolutions, new Comparator {
    public int compare(Resolution r1, Resolution r2) {
        return Integer.valueOf(r1.getWidth()).compareTo(Integer.valueOf(r2.getWidth()));
    }
});
点击查看更多相关文章

转载注明原文:java-按数字值对ArrayList进行排序 - 乐贴网