我在JSF 2中使用PrimeFaces3.4,我找到了一个示例,在我的xhtml中,'==‘在==中的行为不像'==’。我在Java 6文档中找不到“==”操作符的详细信息。它到底是做什么的?EL中的对象是否与Java '==‘相当?
发布于 2013-10-21 07:55:08
EL中的对象是否与Java '==‘相当?
看起来不是,但你并不真的需要它。EL ==
(和eq
)在比较对象引用时将使用equals
方法,并且它已经支持null
比较。如果您的类碰巧没有覆盖equals
,那么它将使用以Java==
结束的Object#equals
进行等式检查。
如果您的类碰巧重写了equals
方法,请确保编写一个好的实现。例如:
public boolean equals(Object o) {
if (o == null) {
return false;
}
if (this == o) {
return true;
}
if (...) {
//add here the rest of the equals implementation...
}
return false;
}
更多信息:
https://stackoverflow.com/questions/19498926
复制