问题标签 [comparable]
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:可比与比较器
可能的重复:
compare() 和 compareTo()
之间的区别 Java:实现 Comparable 和 Comparator 有什么区别?
Comparable 和 Comparator 之间的主要区别是什么。
在什么情况下哪个比另一个更受欢迎?
谢谢
更新 - 与示例的良好链接!
http://www.digizol.com/2008/07/java-sorting-comparator-vs-comparable.html
java - Grails 中的 SortedSet 不起作用
我想使用SortedSet
Grails,但我得到的只是一个 MissingMethodException。
包含排序集的类如下所示:
...以及Comparable
像这样实现的类:
当我尝试保存 SystemUser 对象时,我收到此异常消息:
我的示例与官方参考中的示例几乎相同。
java - 如何仅在一个类中制作 2 个可比较的方法?
我有一个类,我已经按一个属性对其进行了排序。现在我需要做另一件事,我需要创建另一种方式来对我的数据进行排序。我怎样才能做到,所以我可以在两种方法之间进行选择。我知道的唯一命令是 Collections.sort,它将从我想要比较其数据的类中选择方法 compareTo。
甚至可能吗?
java - 对 compareTo 的未经检查的调用
背景
创建一个Map
可以按值排序的。
问题
代码按预期执行,但编译不干净:
Comparable
将作为通用参数传递给Map.Entry<K, V>
(where V
must be ?)的语法Comparable
——以便(Comparable)
可以删除警告中显示的类型转换——让我无法理解。
警告
编译器的脾气暴躁的抱怨:
SortableValueMap.java:24: 警告: [unchecked] unchecked call to compareTo(T) as a member of raw type java.lang.Comparable
问题
如何更改代码以在没有任何警告的情况下进行编译(在使用 编译时不抑制它们-Xlint:unchecked
)?
有关的
- TreeMap 按值排序
- 按值对 Map<Key, Value> 进行排序 (Java)
- http://paaloliver.wordpress.com/2006/01/24/sorting-maps-in-java/
谢谢!
java - Java“作为原始类型 java.lang.Comparable 的成员对 compareTo(T) 的未经检查的调用”
我正在尝试将排序列表作为 Java 中的一个简单练习来实现。为了使其通用,我有一个add(Comparable obj)
这样我可以将它与任何实现 Comparable 接口的类一起使用。
但是,当我obj.compareTo(...)
在代码中的任何地方使用时,我"unchecked call to compareTo(T) as a member of the raw type java.lang.Comparable"
从编译器获得(带有-Xlint:unchecked
选项)。代码工作得很好,但我不知道如何摆脱那个烦人的消息。
有什么提示吗?
java - 为实现 Comparable 的通用类创建 compareTo
我有一个具有两个类型变量的通用类,它实现了 java.lang.Comparable。
因为我用 Comparable 实现了它,所以我需要编写 compareTo() 方法。因为 K, J 可以是任何类型,所以我在如何完全比较它们时遇到了问题。有没有办法在比较中捕获所有可能的类型(原始、包装、对象)?谢谢您的帮助!
java - 使用可比较的类进行排序
我只是不确定如何解决这个问题。这是我收到的错误消息:
测试@第 81 行:
p.sort( new FirstOccComparator() );
其中 p 是我制作的规划师课程。
Planner.sort @ 第 62 行:
这是我的 FirstOccComparator 类: http://pastebin.com/4FZv4nXf (发布在 pastebin 上,因为它太宽并且在这里很难格式化)。在此类中 hasMoreOccurrences() 如果有更多的事件重复发生,则返回 true/false。nextOccurrence() 返回下一次出现的日期。
我很确定我在这里缺少的东西非常简单,我在接口和比较器类方面还是新手。
谢谢您的帮助!
java - 排序方法未正确排序
我正在调用Arrays.sort(schedule, c);
where c 是一个比较器的实例,如下所示:
我得到的输出不是它应该的。我想知道是否有人可以在这里指出我正确的方向。这是我做过的第一个排序算法,它使用的概念对我来说仍然是新的(比较器和实现),很抱歉关于我的代码的多个问题:)
编辑 这是输出之间的区别:http: //pastebin.com/LWy1jqkt
有两种事件,它们是 hasMoreOccurrence() 和 nextOccurrence() 方法:
每日活动
每周活动
java - compareTo 是否有某种预启动延迟?
我刚刚发现了这个说法:“通过首先比较最有可能不同的项目,可以大大提高 compareTo 的性能”。这是真的吗?如果是,为什么?
java - 比较字符串时使用 Comparable 接口
我搜索了这个问题,但我只发现了一个令人困惑的线程,所以我将在这里询问我希望能得到更清晰的答案。
我有一个任务是使用 Comparable 接口按客户名称对数组中的对象进行排序。到目前为止,我只用整数完成了这个,所以我不确定如何将字符串比较在一起。我该怎么做呢?这是我到目前为止的位置,假设我要使用 a.name 与 this.name 相比:
我还需要创建一个类来实现 Comparator 接口,以根据客户购买对值进行排序,我认为我这样做是正确的,但我想确保在我把头发弄错之前,它是错误的。这是我为此所做的:
任何帮助是极大的赞赏!