我想实现Comparator比较object1和object2这两个对象是复杂的对象(嵌套的对象)。实现比较器比较两个对象
我的要求是,如果object2中有任何空值并且object1中的对应值为null或非null,那么我的比较器应该返回true,但是如果object2中的值不为null并且对象1中的对应值不同或为null那么它应该返回false。
这些值可能是对象内部的对象或基础对象的内部对象。
你能否建议我应该如何实现compareTo()方法,以便获得我的愿望结果。
我想实现Comparator比较object1和object2这两个对象是复杂的对象(嵌套的对象)。实现比较器比较两个对象
我的要求是,如果object2中有任何空值并且object1中的对应值为null或非null,那么我的比较器应该返回true,但是如果object2中的值不为null并且对象1中的对应值不同或为null那么它应该返回false。
这些值可能是对象内部的对象或基础对象的内部对象。
你能否建议我应该如何实现compareTo()方法,以便获得我的愿望结果。
compareTo方法通常不返回true或false 比较器工作: 返回-1如果第一给定的对象是比第二 它返回1,如果该第一给定的对象比第二大小一个 并返回0,如果对象是即使
那会是这样的(考虑到你想基于他们的字符串比较两个对象):
if (a.getString() == null && a.getString() == null) {
return 0; //both of them are null: return equal
}
if (a.getString() == null) {
return 1; //first one is null: second is bigger
}
if (b.getString() == null) {
return -1; //second one is null: first is bigger
}
return a.getString().compareTo(b.getString()); //compare the two strings
//inside, with the already
//existing method from the
//String class
考虑你没有给任何代码示例,这个代码可以ld符合您的需求
我在做反思。我被卡住了一点,这是我的错误,我没有发布代码。但是我在做的时候得到了解决方案。它可能需要1小时才能解决问题。谢谢 – user2508111
问题在哪里?显示一些代码。 – NINCOMPOOP
你期望这里的人会为你写逻辑吗?粘贴你的代码,并显示你已经解决了这个问题并询问具体问题。 – vineet
我在做反思。我被卡住了一点,这是我的错误,我没有发布代码。但是我在做的时候得到了解决方案。它可能需要1小时才能解决问题。谢谢 – user2508111