问题标签 [comparator]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
21216 浏览

java - 帮助使用 Comparator 比较浮点成员变量

我可以很好地比较字符串,但想知道如何对浮点数进行排名?

getChange() 返回一个字符串。我希望能够降序排序。我怎样才能做到这一点?

更新:

我收到编译时错误:

0 投票
2 回答
1202 浏览

java - 如何比较字符串的百分比?

我有一个字符串"+1.29%""-1.29%"

如何将其转换为浮点数或双精度数,以便比较这些值?

这就是我的比较器类的样子:

0 投票
2 回答
2017 浏览

java - 排序 ArrayList 无法正常工作

我正在尝试对我的 ArrayList 进行排序,但是当我检查我所谓的排序数组中的第一项时,它是不正确的。我不确定为什么?我错过了什么吗?

这是我的比较器:

这是我执行实际排序的方式:

这是我的测试数据

排序后我希望它是:

但是,当我在排序后取出第一个项目时,我得到:"Yahoo"

0 投票
4 回答
1713 浏览

java - Java:从非静态比较器对其外部类字段的引用

我需要使用非静态比较器对对象列表进行排序,该比较器使用其外部对象字段中的值。

但由于某种原因,这不能正常工作。当我取消注释比较器中的 println 行时,它表明引用是对 A 对象的,但它们在一次 sort() 调用中是不同的,因此“x”的值是不同的。我在这里做错了什么?

0 投票
2 回答
1378 浏览

java - 用于简单自定义逻辑的 java 比较器

如何在下面的示例中找到第 4,1 和 6 行?
在这种情况下,将 Collection.sort() 与 Comparator 一起使用是否合理?

顶部的示例是一个对象满足以下条件的列表:
- 每个对象包含 4 个整数(a,b,c,d),
- 列表中的每个对象都是唯一的,
- a < b 和 c < d。


下面不是工作示例,而是我的思维方式,我可以期望比较器如何工作以找到预期的对象。

0 投票
2 回答
1208 浏览

java - 比较器作为静态字段 - 接口或实现?

我有一个已经具有“自然”顺序的类,并希望定义一个不同的 Comparator 可以使用类似于String.CASE_INSENSITIVE_ORDER- 即,将其定义为实例化的静态字段,以便在需要时引用。

对于实际比较类型的接口 Foo(它将是Comparator<Foo>),我赞成将其放在那里而不是 FooImpl (在这种特定情况下只有一个实现,如果有区别的话)。它是使用类似于 String 的内部类实现的,当然除了该类必须是公共的,因为 Foo 是一个接口。

想知道将它放在 FooImpl 中而不是 Foo 中是否更好,如果是,为什么?我也不关心实现类的公共可见性,但它应该是一个独立的独立包可见实体吗?

0 投票
2 回答
3967 浏览

c++ - 如何初始化 std::set 比较器?

我需要初始化一些基于 std::set 的新数据类型 TType 的比较器和另一个类 Object 的一些对象 o:

这个声明在类之外(在头文件中)。在声明时该对象不必存在,稍后会创建它。

如果声明在某个方法中(当对象已经创建时),情况会很简单......我能做什么?

0 投票
3 回答
258 浏览

java - 这是按标题、位置排序然后使用比较器排序的正确方法吗?

考虑这个类。

如果我想按标题、位置和顺序排序,compareTo 方法是否正确?

0 投票
1 回答
3704 浏览

java - 在 Java Comparator 中比较两个 TreeNode(或 DefaultMutableTreeNode)对象

今天我的目标非常简单,我正在尝试为扩展 DefaultMutableTreeNode 的类找到实现 compareTo(或 Comparable)接口的正确方法。

问题是这样的:假设我有一个非常好的代表时代的课程。我已经编写了一个非常好的 compareTo 方法(它可以按我的意愿工作),我已经用 Arrays.sort() 进行了测试,结果非常好。

现在假设我有一个带有一堆不同对象的 JTree,如下所示:

因此,作为一名专业程序员,我立即开始编码,没有任何预先考虑。这是我的 SpecialNode 类:

好的,所以如果您没有阅读评论(承认,您没有阅读);我的问题是在 SpecialNode 的 compareTo 方法中,我只能访问 userObject。可悲的是,我不知道 userObject 曾经是什么,因此,我无法正确地将其转换为调用正确的 compareTo 方法!

这真的很痛苦,因为我已经在将添加到我的树的所有类中编写了几个非常好的 compareTo 方法。那么有人可以帮助一个人并给我一个提示吗?

tl;dr -如何从 DefaultMutableTreeNode 存储的通用对象中获取类型信息?如果那不可能,当我什至不知道它们可能包含什么时,我应该如何比较 SpecialNode 的两个实例!

提前致谢。

0 投票
5 回答
21613 浏览

java - 如何从 Set 和 Comparator 中获取 List

List从 a 中获取 aSet并根据给定排序的“好”(为什么?)解决方案是Comparator什么?