问题标签 [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.
java - 如何在 Java 中按字母顺序对枚举成员进行排序?
我有一个如下的枚举类:
后来在我的代码中,我基本上遍历了 Letter 枚举并将其成员打印到控制台:
我认为 values() 方法会给我一个枚举的有序视图(如此处所述),但这里不是这种情况。我只是按照我在 Letter 枚举类中创建它们的顺序获取枚举成员。有没有办法按字母顺序输出枚举的值?我需要一个单独的比较器对象,还是有内置的方法来做到这一点?基本上,我希望根据 getDescription() 文本按字母顺序对值进行排序:
java - 创建一个通用比较器来对树形图问题进行排序
这就是我所在的位置:
我正在上课java.lang.string
而不是Animal
上课。关于如何解决这个问题的任何想法?
java - Java TreeMap(比较器)和忽略比较器的get方法
我的问题是,如何使用方法 get(id) 忽略给定的比较器。我希望地图按不区分大小写进行排序,但是当我通过给定键获取值时,我希望它区分大小写。
java - Java Collections.sort - 帮我删除未经检查的警告
在 Java 1.5 下,上述工作正常,除了 'new BeanComparator("questionId")' 生成未经检查的警告。我不喜欢警告。有没有办法可以为 BeanComparator 提供一个类型,还是必须使用@SuppressWarnings("unchecked")
?
java - TreeMap 只允许放入一项?
我正在开发一个 Java 应用程序,并且不熟悉使用 TreeMap。该程序需要跟踪文本文件中每个单词的出现次数。但是,我无法将数据放入 TreeMap。
当我使用相同的确切代码将数据放入 HashMap 时,它工作正常,但我需要按值对数据进行排序。
我已经为此工作了两天,我完全被难住了!任何建议将不胜感激。
我设计了一个小示例代码集来演示该问题:
词类:
计数类:
比较器类:
java - Java:如何使用不同的等于定义执行列表操作?
Java:如何使用不同的等于定义执行列表操作?
我有两个通用 POJO 列表。我需要根据比较列表中 POJO 的不同方式对列表执行一些设置操作。
例如,如果我的 POJO 具有以下结构:
(使用适当的 getter 和 setter)
给定List1<GenericPojo>
and List2<GenericPojo>
,我将如何找到:
List1 - List2(GenericPojo
如果只有 ID 相等,则类相等)
List1 和 List2 的交集(其中id
, address
, city
, country
, 但不extraDetails
相等GenericPojo
)
两个不同的自定义比较器类在这里会有所帮助吗?是否有任何库可以有效地处理这些操作,或者我应该尝试实现自己的库?
java - Java 序列化比较器
是否可以使用比较器序列化 TreeMap?
我已经测试过,它可以很好地序列化没有比较器的树形图,当您添加比较器时,它会引发异常。
如果我将比较器声明为瞬态,它仍然不起作用。仅当我使每个树图都瞬态时才有效,但在这种情况下它不会序列化树。
java - 我可以在不实现 Comparable 的情况下使用 Comparator 吗?
是否可以在不实现 Comparable 类的情况下使用 Comparator ?例如,如果我有以下情况:
然后我可以使用 comp 比较两个对象吗?如果是这样,我将如何去做?
谢谢...
java - 爪哇:等分线?(从对象集合中删除重复项)
我有一堆类的对象Puzzle
。我已经覆盖了equals()
and hashCode()
。当需要向用户展示解决方案时,我想过滤掉所有“相似”的谜题(按照我定义的标准),所以用户只能看到每个谜题中的一个。
相似性是可传递的。
例子:
在这种情况下,只有 A 或 D 和 B 或 C 会呈现给用户——而不是两个类似的拼图。两个类似的谜题同样有效。重要的是它们不会同时显示给用户。
为此,我想使用一个禁止重复的 ADT。但是,我不想更改equals()
andhashCode()
方法来返回关于相似性的值。Equalator
在这种情况下,Comparator
我可以使用一些吗?还是我应该这样做的另一种方式?
我正在学习的课程是一个维护字母网格的拼图。(如拼字游戏。)如果拼图包含相同的单词,但方向不同,则认为它是相似的。所以下面要解惑:
将类似于:
java - java运算符比较多个值
有什么方法可以比较这样的值吗?