62,614
社区成员
发帖
与我相关
我的任务
分享
@Override
protected boolean getBooleanResult(IJavaValue leftOperand,
IJavaValue rightOperand) {
boolean equals = false;
switch (getInternResultType()) {
case T_double:
equals = ((IJavaPrimitiveValue) leftOperand).getDoubleValue() == ((IJavaPrimitiveValue) rightOperand)
.getDoubleValue();
break;
case T_float:
equals = ((IJavaPrimitiveValue) leftOperand).getFloatValue() == ((IJavaPrimitiveValue) rightOperand)
.getFloatValue();
break;
case T_long:
equals = ((IJavaPrimitiveValue) leftOperand).getLongValue() == ((IJavaPrimitiveValue) rightOperand)
.getLongValue();
break;
case T_int:
if (leftOperand instanceof IJavaObject) {
// enumerations in switch statement
equals = leftOperand.equals(rightOperand);
} else {
equals = ((IJavaPrimitiveValue) leftOperand).getIntValue() == ((IJavaPrimitiveValue) rightOperand)
.getIntValue();
}
break;
case T_boolean:
equals = ((IJavaPrimitiveValue) leftOperand).getBooleanValue() == ((IJavaPrimitiveValue) rightOperand)
.getBooleanValue();
break;
default:
equals = leftOperand.equals(rightOperand);
break;
}
return ((fIsEquals) ? equals : !equals);
}