java - 如何以在 11 之前对 2 进行排序的方式使用 java 的排序函数?

标签 java sorting collections

我正在使用以下 java 代码对值进行排序:-

 Collections.sort(values);

它工作正常,但排序如下:- 1 10 2 3 4

我需要它按如下方式排序:- 1 2 3 4 10

最佳答案

你可以传递一个 Comparator进入 sort 调用以在排序期间将字符串转换为数字,或者首先将值存储为数字。比较字符串时,102 之前。

或者,如果您总是需要以相同的方式排序,则在您的类中定义一个 compareTo(并让它实现的类 Comparable),并跳过 Comparator .

关于java - 如何以在 11 之前对 2 进行排序的方式使用 java 的排序函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8029654/

相关文章:

java - 获取 JCE KeyGenerators 所有可能的 key 大小

java - 根据对象的成员属性之一在对象列表中查找对象

javascript - 下划线按表示节号的字符串排序

java - 表式索引集合过滤

java - 使用 Guava Multimap 表示 xml 名称和值

java - 用于保存标记化字符串的 Android 内存高效收集

java - 欧拉计划 17 错误答案

java - 通过 Servlet 将文件从 HTML 表单上传到 Google Cloud Storage(使用 Google Cloud Storage Client Library for Java)

Java排序方法编译错误

mongodb - 在一个 MongoDB 聚合查询中进行排序和分组