comparator相关内容

尝试按存储节点的值之一对优先级队列进行排序

因此,我是优先队列的新手。在我要实现的算法中,我想根据存储的节点的functionValue对优先级队列进行排序。我不了解优先级队列如何知道根据该值对节点进行排序,而不是我的节点对象的其他八个实例变量之一。我很确定我定义了一个Comparator对象来定义比较/排序规则,但是我不能为Oracle Comparator的Oracle类库做头或尾。 这是我的节点类的属性 公共类Node { ..
发布时间:2020-10-06 18:45:30 Java开发

快速比较字节格式的long?

我有一个具有byte []键的键值存储。其中一些键将用于long(long本身,也包括Localdate和LocalTime实例)。 我有一个不错的比较器,使用标准Java和Guava: @Override public int compare(byte [] left,byte [] right){ long leftLong = Longs.fromByteArray(le ..
发布时间:2020-10-06 18:45:27 Java开发

Python使用特殊的比较器查找最小对象

所以我得到了我的问题回答了有关如何找到最小值的问题,但是如果我想要最小的对象怎么办?我们是否可以类似地简化此代码? min = 9999 minChild =无 用于currentRoot中的子项。孩子:如果child.score ..
发布时间:2020-10-06 18:45:24 Python

按值对番石榴表进行排序

有没有办法做到这一点?预期的效果是rowMap和columnMap条目值将按值排序。 问题在于,如果没有Table中的基础映射,我将无法创建比较器。 p> Table table = TreeBasedTable.create(?,?); Map> rowMap = table.rowMap(); Map ..
发布时间:2020-10-06 18:45:16 Java开发

Collections.sort()方法上的IllegalArgumentException

我有用于字符串的比较器,这些字符串已转换为日期。当我将此比较器传递给Collections.sort()方法时,我得到 java.lang.IllegalArgumentException:比较方法违反了它的常规约定!。 我已经阅读了一些有关此异常的文章,但是我真的不明白为什么会出现此异常。知道吗? private SimpleDateFormat sdf = new SimpleD ..
发布时间:2020-10-06 18:45:10 Java开发

比较器双倍不起作用

我开发了一个程序,该程序创建一个Book对象数组,并根据用户输入对它们进行排序。排序选项为author-title-pages-price,除了价格排序外,其他所有选项均可用。 请帮助我找出为什么我不能使用比较器对双打进行排序... 我的SchoolTextBook类: 导入java.util.Comparator; 公共类SchoolTextBook { 私有String ..
发布时间:2020-10-06 18:45:08 Java开发

等同于比较器的身份操作

是否存在可能存在的比较器身份表示? 在寻找简化代码的过程中在删除Java中的重载方法中,我想到了这一点,最终结论是,如果每次比较都导致对象相等,则顺序不会真正改变,从而使操作成为 identity 。因此,我最终得到了这样一个(效率低下的)建议: public static列表 toListOfNewType(List inputList,Function ..
发布时间:2020-10-06 18:44:04 Java开发

将两个整数与我自己的比较器进行比较

我正在学习如何在Java中使用Comparator接口,并且试图编写自己的Comparator,该比较器会以不同的方式比较Integer(例如3> 5)。我有问题,有人可以告诉我我的代码出了什么问题吗? import java.util。*; import java.lang。*; class MyComparator实现Comparator ..
发布时间:2020-10-06 18:43:00 Java开发

从有序容器中制作比较器

给出对象列表,最简单的方法来创建函子对象以充当比较器,以使比较器遵守列表中对象的顺序。确保列表中的对象是唯一的,并且列表包含所有可能对象的空间。 例如,假设我们有: const std :: vector订购{“ dog”,“ cat”,“ mouse”,“ elephant”}; 现在,我们希望函数充当比较器,比如说映射: ..
发布时间:2020-10-06 18:41:58 C/C++开发

在对文件进行排序时,比较方法违反了其一般约定

我知道有很多关于这种异常的问题,我确实找到了解决方案,但是我的问题是,不同项目中的相同代码不会在这种情况下引发异常。这两个项目都具有相同版本的Java和其他库。 基本上,我有这个小功能,可以从目录中检索文件列表,按时间戳排序,然后返回列表绝对文件名: public static List getFiles(String dir){ List ..
发布时间:2020-10-06 18:40:52 Java开发

JList搜索的效率

我遇到了一些Java代码,用于对JList进行前缀搜索。但是,从算法的角度来看,该算法的效率很低,它会在列表上为每个按键进行线性搜索,并在紧密循环内进行缓慢的大小写转换。 我想对于大量数据,使用自定义实现的三元搜索树将是一种更为有效的解决方案。但是,如果人们正在努力寻找简单的代码,而又不具有对这种复杂性所必需的性能要求,那么是否还有其他更简单的方法可以改进这种算法而又不需要大量的额外代码? ..
发布时间:2020-10-06 18:40:49 Java开发

比较器可以比较两个不同类型的对象吗?

我有Person和Employee类的两个对象。 这两个类都有共同的属性年龄。 并且我已经将这两个类的几个对象添加到Arraylist中,现在我想两个对象编写一个Comparator并将其传递给Collections类的sort方法。 并且希望根据年龄对列表进行排序。 我尝试这样做只是为了更清楚地了解Java中可比和比较器的使用。 编辑: 原因为什么我问这个问题是我不清楚“比较器” ..
发布时间:2020-10-06 18:40:45 Java开发

比较器接口的equals方法,为什么总是安全地不重写Object.equals(Object)

我目前正在研究 Comparator 接口,并注意到在比较器的equals 方法,它指出 请注意,始终不要覆盖Object.equals(Object) 我已经检查了 equals 中默认方法的实现。 code> Object 类 因此使用 equals 方法的默认实现,它只是检查两个实例是否es指向同一对象,因为 this == obj 测试引用相等性。 但是,如果我有两 ..
发布时间:2020-10-06 18:40:43 Java开发

Java版本号排序

String [] k1 = {“ 0.10”,“ 0.2”,“ 0.1”,“ 0”,“ 1.10”,“ 1.2”,“ 1.1”,“ 1”, “ 2.10”,“ 2”,“ 2.2”,“ 2.1”}}; double [] k2 = {0.10,0.2,0.1,0,1.10,1.2,1.1,1,2.10,2,2.2,2.1}; Arrays.sort(k1); Arrays.sort( ..
发布时间:2020-10-06 18:39:40 Java开发

Java接口比较器静态比较

int compare(Object o1,Object o2) 比较其两个参数的顺序。 要比较2个对象o1和o2,需要执行以下操作: MyClass o1 = new MyClass(); MyClass o2 = new MyClass(); if(o1.compare(o1,o2)> 0)...... 为什么此方法不是静态的? 如果方法是静态的 ..
发布时间:2020-10-06 18:39:36 Java开发

Java TreeMap自定义比较器怪异行为

我正在尝试创建一个具有排序键的 Map ,该键首先按字母顺序排序,最后按数字顺序排序。为此,我使用了 TreeMap 和自定义的 Comparator : public static Comparator ALPHA_THEN_NUMERIC_COMPARATOR = 新的Comparator (){ @Override public int ..
发布时间:2020-10-06 18:39:34 Java开发

在地图中排序日期字符串

嗨,我想根据以下日期对地图对象进行排序 testMap.put(“ 06/15 / 2015“,1); testMap.put(“ 05/15/2015”,2); testMap.put(“ 01/15/2016”,4); testMap.put(“ 07/15/2015”,3); testMap.put(“ 02/15/2016”,5); 我需要如下所示 ..
发布时间:2020-10-06 18:38:24 Java开发