@Override public int hashCode() { if (sign) { return fNumerator.hashCode() + fDenominator.hashCode() * 17; } return fNumerator.hashCode() + fDenominator.hashCode(); }
@Override public boolean equals(Object obj) { if (obj instanceof FractionNode) { return fNumerator.equals(((FractionNode) obj).fNumerator) && fDenominator.equals(((FractionNode) obj).fDenominator) && sign == ((FractionNode) obj).sign; } return false; }
@Override public double doubleValue() { double numer = Double.parseDouble(fNumerator.toString()); double denom = Double.parseDouble(fDenominator.toString()); if (sign) { return -1.0 * numer / denom; } return numer / denom; }
@Override public String toString() { final StringBuffer buff = new StringBuffer(); if (sign) { buff.append("-"); } if (fNumerator != null) { buff.append(fNumerator.toString()); } buff.append("/"); if (fDenominator != null) { buff.append(fDenominator.toString()); } return buff.toString(); }
/** Destroys this {@link GroundItem}. */ public void destroy() { if (referenceNode != null) referenceNode.removeFromList(); removeFromList(); referenceNode = null; remove = true; }
@Override protected Integer visitIntegerNode(IntegerNode node) { return node.getValue(); }
@Override protected Boolean visitIntegerNode(IntegerNode node) { return node.getValue() == ((IntegerNode) other).getValue(); }