问题标签 [equals]
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 中正确同步 equals()
我有以下仅包含一个字段的类i
。对该字段的访问由对象的锁(“this”)保护。在实现 equals() 时,我需要锁定这个实例 (a) 和另一个 (b)。如果线程 1 调用 a.equals(b),同时线程 2 调用 b.equals(a),则两种实现中的锁定顺序是相反的,可能会导致死锁。
我应该如何为具有同步字段的类实现 equals()?
java - 使用JPA和Hibernate时equals和hashcode应该如何实现
模型类的equals和hashcode应该如何在Hibernate中实现?常见的陷阱有哪些?对于大多数情况,默认实现是否足够好?使用业务密钥有什么意义吗?
在我看来,当考虑到延迟获取、id 生成、代理等时,很难让它在每种情况下都能正常工作。
java - Google App Engine、JDO 和 equals/hashCode
我在 Google App Engine 中有一个运行良好的应用程序。我意识到我忘记实现 equals 和 hashCode 的一个 JDO 增强对象(我需要在一组中使用该对象)。所以我做了。在这些实现中我并没有真正做任何特别的事情,实际上我只是使用 Eclipse 来生成它们。像这样:
所以现在,当我尝试点击应用程序中的任何 URL 时,会抛出此异常:
/addUser javax.jdo.JDOUserException:持久类“类 com.bpapa.myapp.domain.User 似乎没有得到增强。您可能需要重新运行增强器并检查输出中的错误。” 数据库中没有表,但操作需要它。请检查该类的元数据规范。在 org.datanucleus.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:427) 在 org.datanucleus.jdo.JDOQuery.execute(JDOQuery.java:249) 在 com.bpapa.myapp.servlet.AddUserServlet.doPost(AddUserServlet.java :34)
关于我做错了什么有什么想法吗?
java - “.equals”和“==”有什么区别?
我今天换了讲师,他用一个奇怪的代码对我说。(他说最好用.equals
,当我问为什么时,他回答“因为它是!”)
所以这里有一个例子:
而不是我习惯的:
两者有什么区别。为什么他的方式(使用.equals
)更好?
在快速搜索中找到了这个,但我无法理解这个答案:
c# - Dictionary.Equals() 有实现吗?
我有一个字典,我将它与另一个字典(输入为 IDictionary 的变量)进行比较。执行 d1.Equals(d2) 会产生错误。在下面编写我自己的代码会产生正确的结果。两者都是System.Collections.Generic.Dictionary
。我是否遗漏了什么或没有Dictionary
比较Equals
键/值的实现?
c# - 比较 Double 和 Int 的最佳方法是什么?
C# 中的以下代码不起作用:
那么,问题是:比较 Double 和 Int 的最佳方法是什么?
c# - 这是实现 Equals 和相等/不等式运算符的好/有效的习惯用法吗?
我在解决这个问题时遇到了一些问题,所以我想问一下是否有人对这是否是实现自定义不可变类的 Equals 方法和相等/不等式运算符的有效方法有任何反馈。我的程序非常频繁地调用这些运算符,因此我想确保它们正确无误。
c# - 为什么要使用 String.Equals 而不是 ==?
我最近被介绍到一个大型代码库,并注意到所有字符串比较都是使用String.Equals()
而不是==
这是什么原因,你觉得呢?
sql - 在 SQL 中不等于
我想知道是否有某种方法可以在 MYSQL 中执行不等于命令。换句话说,你能做这样的命令:“SELECT * FROM someTitle WHERE someLabel != 'something'”吗?尝试此操作时,我的代码返回错误。
谢谢你的帮助!
java - Java:通知提供者与 hashCode 驱动的 Map 的实现
我已经为一组通用侦听器实现了抽象通用提供程序E
,后代必须notifyListener(E)
用特定的通知代码覆盖。对于我选择的听众后备名单WeakHashMap<K,V>
。侦听器必须作为弱引用:
典型用途:
一切正常,但是当我需要AbstractList
后代类作为侦听器时,支持WeakHashMap
只接受一个侦听器实例!很明显——方法hashCode()
和equals()
监听器为所有实例(空列表)返回相同的值,所以WeakHashMap.put
只替换以前添加的监听器。
什么是最好的解决方案?
使用另一个非 hashCode 支持集合——但
WeakHashMap
对我来说太棒了,因为自动为我管理弱引用使用非通用监听器,例如具有简单
equals() { return (this == object); }
实现的抽象类——但这不是那么灵活addListener(E)
使用简单的 equals() 为侦听器使用一些包装器——但由于弱引用,此包装器对调用者不能透明
另一个想法?