equals相关内容

如何覆盖Java中的equals方法

我正在尝试覆盖 Java 中的 equals 方法.我有一个 People 类,它基本上有 2 个数据字段 name 和 age.现在我想覆盖 equals 方法,以便我可以在 2 个 People 对象之间进行检查. 我的代码如下 public boolean equals(其他人){布尔结果;if((other == null) || (getClass() != other.getC ..
发布时间:2021-11-25 11:26:19 Java开发

使用 .equals() 和 == 运算符比较两个对象

我用一个 String 字段构造了一个类.然后我创建了两个对象,我也必须使用 == 运算符和 .equals() 来比较它们.这是我所做的: public class MyClass {字符串 a;公共 MyClass(String ab) {a = ab;}公共布尔等于(对象对象2){if(a == object2) {返回真;}否则返回假;}公共布尔等于2(对象对象2){if(a.equal ..
发布时间:2021-11-25 11:19:07 Java开发

为什么我需要覆盖 Java 中的 equals 和 hashCode 方法?

最近我通读了这个 开发者作品文档. 该文档是关于有效且正确地定义 hashCode() 和 equals(),但是我无法弄清楚为什么我们需要覆盖这两个方法. 我如何决定有效地实施这些方法? 解决方案 Joshua Bloch 谈 Effective Java 您必须在每个覆盖 equals() 的类中覆盖 hashCode().不这样做将导致违反 Object.hashC ..
发布时间:2021-11-25 10:13:40 Java开发

在 Java 中重写 equals 和 hashCode 时应该考虑哪些问题?

在覆盖 equals 和 hashCode 时必须考虑哪些问题/陷阱? 解决方案 理论(适用于语言律师和数学爱好者): equals() (javadoc) 必须定义一个等价关系(它必须是自反、对称和传递em>).此外,它必须一致(如果对象没有被修改,那么它必须保持返回相同的值).此外,o.equals(null) 必须始终返回 false. hashCode() (javad ..
发布时间:2021-11-25 10:07:34 Java开发

Java - 抽象类、equals() 和两个子类

我有一个名为 Xpto 的抽象类和两个扩展它的子类,名为 Person 和 Car.我还有一个名为 Test 的类,带有 main() 和一个方法 foo(),用于验证两个人或汽车(或扩展 Xpto 的类的任何对象)是否是等于.因此,我在 Person 和 Car 类中重新定义了 equals().两个人同名时相等,两辆车同名时相等. 但是,当我在 Test 类中调用 foo() 时,我总是 ..
发布时间:2021-11-25 09:12:02 Java开发

Java - 抽象类、equals() 和两个子类

我有一个名为 Xpto 的抽象类和两个扩展它的子类,名为 Person 和 Car.我还有一个名为 Test 的类,带有 main() 和一个方法 foo(),用于验证两个人或汽车(或扩展 Xpto 的类的任何对象)是否是等于.因此,我在 Person 和 Car 类中重新定义了 equals().两个人同名时相等,两辆车同名时相等. 但是,当我在 Test 类中调用 foo() 时,我总是 ..
发布时间:2021-11-25 09:11:46 Java开发

为什么我需要覆盖 Java 中的 equals 和 hashCode 方法?

最近我通读了这个 开发者作品文档. 该文档是关于有效且正确地定义 hashCode() 和 equals(),但是我无法弄清楚为什么我们需要覆盖这两个方法. 我如何决定有效地实施这些方法? 解决方案 Joshua Bloch 谈 Effective Java 您必须在每个覆盖 equals() 的类中覆盖 hashCode().不这样做将导致违反 Object.hashC ..
发布时间:2021-11-22 14:51:47 Java开发

在 Java 中重写 equals 和 hashCode 时应该考虑哪些问题?

在覆盖 equals 和 hashCode 时必须考虑哪些问题/陷阱? 解决方案 理论(适用于语言律师和数学爱好者): equals() (javadoc) 必须定义一个等价关系(它必须是自反、对称和传递em>).此外,它必须一致(如果对象没有被修改,那么它必须保持返回相同的值).此外,o.equals(null) 必须始终返回 false. hashCode() (javad ..
发布时间:2021-11-22 14:47:01 Java开发

覆盖 java equals() 方法 - 不起作用?

我今天在 equals() 方法中遇到了一个有趣(并且非常令人沮丧)的问题,这导致我认为是经过良好测试的类崩溃并导致了一个错误,这让我非常沮丧很长时间追查. 为了完整起见,我没有使用 IDE 或调试器 - 只是很好的老式文本编辑器和 System.out.时间非常有限,而且是学校的项目. 无论如何 - 我正在开发一个基本的购物车,它可以包含一个 Book 对象的 ArrayLis ..
发布时间:2021-11-19 22:49:55 Java开发

集合的 hashCode 方法的最佳实现

我们如何决定集合的 hashCode() 方法的最佳实现(假设 equals 方法已被正确覆盖)? 解决方案 最好的实现方式?这是一个很难回答的问题,因为这取决于使用模式. Josh Bloch 的 Effective Java 在第 8 项(第二版)中针对几乎所有情况提出了合理的良好实现.最好的办法是在那里查找,因为作者在那里解释了为什么这种方法是好的. 简短版本 创建 ..
发布时间:2021-11-19 22:49:34 Java开发

“.equals"和“.equals"有什么区别?和“=="?

我今天换了讲师,他对我说用了一个奇怪的代码.(他说使用 .equals 更好,当我问为什么时,他回答“因为它是!") 这里有一个例子: if (o1.equals(o2)){System.out.println("两个整数对象都是一样的");} 而不是我习惯的: if (o1 == o2){System.out.println("两个整数对象都是一样的");} 两者有什么区别.为什么 ..
发布时间:2021-11-19 22:48:53 Java开发

如何覆盖Java中的equals方法

我正在尝试覆盖 Java 中的 equals 方法.我有一个 People 类,它基本上有 2 个数据字段 name 和 age.现在我想覆盖 equals 方法,以便我可以在 2 个 People 对象之间进行检查. 我的代码如下 public boolean equals(其他人){布尔结果;if((other == null) || (getClass() != other.getC ..
发布时间:2021-11-19 22:45:08 Java开发

为什么我需要覆盖 Java 中的 equals 和 hashCode 方法?

最近我通读了这个 开发者作品文档. 该文档是关于有效且正确地定义 hashCode() 和 equals(),但是我无法弄清楚为什么我们需要覆盖这两个方法. 我如何决定有效地实施这些方法? 解决方案 Joshua Bloch 谈 Effective Java 您必须在每个覆盖 equals() 的类中覆盖 hashCode().不这样做将导致违反 Object.hashC ..
发布时间:2021-11-19 22:25:46 Java开发

在 Java 中重写 equals 和 hashCode 时应该考虑哪些问题?

在覆盖 equals 和 hashCode 时必须考虑哪些问题/陷阱? 解决方案 理论(适用于语言律师和数学爱好者): equals() (javadoc) 必须定义一个等价关系(它必须是自反、对称和传递em>).此外,它必须一致(如果对象没有被修改,那么它必须保持返回相同的值).此外,o.equals(null) 必须始终返回 false. hashCode() (javad ..
发布时间:2021-11-19 22:24:08 Java开发

Java,如何比较字符串和字符串数组

我在这里搜索了一段时间,但一直没有找到答案. 我基本上被要求使用一个数组来完成大学的这项作业.然后我应该检查输入(它也是一个字符串)是否与字符串数组中存储的任何内容相匹配. 我知道可以使用 .equals() 方法轻松比较字符串.但是,同样的方法不适用于 String 数组. 我为 StackOverflow 创建了以下代码示例,以便您可以使用它向我解释(如果您愿意). 我 ..
发布时间:2021-11-18 05:11:30 Java开发

如何在 Kotlin 中比较两个数组?

给定一些 Kotlin 中的数组 let a = arrayOf("first", "second")val b = arrayOf("第一", "第二")val c = arrayOf("第一", "第二") Kotlin std-lib 是否有内置函数来测试两个数组的每个元素的(值)相等性? 从而导致: a.equals(b)//truea.equals(c)//假 equals ..
发布时间:2021-11-18 05:00:20 其他开发

如何比较 Java 中的两个对象数组?

我有两个这样的对象数组: Object[] array1 = {0, 1, 2, 3};Object[] array2 = {0, 1, 2, 3}; 我想知道数组是否相等.我定义等于 array1 中的每个值都与 array2 中那个位置的值相同.所以这两个数组是相等的. 找出这两个数组是否相等的最佳原因是什么? if(array1 == array2) 不是一个深等于,所以它不起 ..
发布时间:2021-11-18 04:12:39 Java开发

带有 `==` 运算符的 Array 类型的奇怪行为

scala>列表(1,2,3) == 列表(1,2,3)res2:布尔值 = 真标度>地图(1 ->“偶来")==地图(1->“偶来")res3:布尔值 = 真 但是当试图对 Array 做同样的事情时,它的工作方式并不相同.为什么? scala>数组('a','b') == 数组('a','b')res4:布尔值 = 假 我使用过 2.8.0.RC7 和 2.8.0.Beta1 预发布版. ..
发布时间:2021-11-18 03:05:46 其他开发

为什么`Array(0,1,2) == Array(0,1,2)` 没有返回预期的结果?

据我所知,Scala 的 == 定义了两个对象的自然相等性. 我期望 Array(0,1,2) == Array(0,1,2) 比较自然相等.例如,检查数组的所有元素在与另一个数组的相应元素进行比较时是否都返回 true. 人们告诉我 Scala 的 Array 只是一个 Java [],它只比较身份.重写Array的equals方法来比较自然相等不是更有意义吗? 解决方案 S ..
发布时间:2021-11-18 02:16:51 其他开发

比较java中的数组

int [] nir1 = new int [2];nir1[1] = 1;nir1[0] = 0;int [] nir2 = new int [2];nir2[1] = 1;nir2[0] = 0;布尔 t = nir1.equals(nir2);布尔 m = nir1.toString().equals(nir2.toString()); 为什么 m 和 t 都是假的?在 Java 中比较 ..
发布时间:2021-11-18 02:10:12 Java开发