Equals methods rely on catching ClassCastException rather than using instanceof
check
-------------------------------------------------------------------------------------
Key: MATH-337
URL: https://issues.apache.org/jira/browse/MATH-337
Project: Commons Math
Issue Type: Improvement
Reporter: Sebb
Priority: Minor
Several of the equals methods rely on catching ClassCastException rather than
using an instanceof check.
For example:
{code}
SimplexTableau.equals(Object){
if (this == other) {
return true;
}
if (other == null) {
return false;
}
try {
SimplexTableau rhs = (SimplexTableau) other;
etc.
} catch (ClassCastException ex) {
return false;
}
}
{code}
This is likely to be significantly slower if the cast fails. It would be
cheaper to do the following:
{code}
SimplexTableau.equals(Object){
if (this == other) {
return true;
}
if (!(other instanceof SimplexTableau)) {
return false;
}
SimplexTableau rhs = (SimplexTableau) other;
etc.
}
{code}
Note that the null check is no longer needed; it is replaced by the instanceof
check.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.