public abstract class NumericValue extends AtomicValue implements Comparable, AtomicMatchKey
NaN_MATCH_KEY, typeLabel| Constructor and Description |
|---|
NumericValue() |
| Modifier and Type | Method and Description |
|---|---|
abstract NumericValue |
abs()
Get the absolute value as defined by the XPath abs() function
|
abstract NumericValue |
ceiling()
Implement the XPath ceiling() function
|
abstract int |
compareTo(long other)
Compare the value to a long
|
int |
compareTo(Object other)
Compare the value to another numeric value
|
boolean |
equals(Object other)
The equals() function compares numeric equality among integers, decimals, floats, doubles, and
their subtypes
|
abstract NumericValue |
floor()
Implement the XPath floor() function
|
abstract BigDecimal |
getDecimalValue()
Get the numeric value converted to a decimal
|
abstract double |
getDoubleValue()
Get the numeric value as a double
|
abstract float |
getFloatValue()
Get the numeric value converted to a float
|
AtomicMatchKey |
getXPathComparable(boolean ordered,
StringCollator collator,
int implicitTimezone)
Get a Comparable value that implements the XPath ordering comparison semantics for this value.
|
abstract int |
hashCode()
hashCode() must be the same for two values that are equal.
|
static boolean |
isInteger(AtomicValue value)
Test whether a value is an integer (an instance of a subtype of xs:integer)
|
boolean |
isNegativeZero()
Ask whether this value is negative zero
|
abstract boolean |
isWholeNumber()
Ask whether the value is a whole number, that is, whether it compares
equal to some integer
|
abstract long |
longValue()
Return the numeric value as a Java long.
|
abstract NumericValue |
negate()
Change the sign of the number
|
static NumericValue |
parseNumber(String in)
Get a numeric value by parsing a string; the type of numeric value depends
on the lexical form of the string, following the rules for XPath numeric
literals.
|
abstract NumericValue |
round(int scale)
Implement the XPath round() function
|
abstract NumericValue |
roundHalfToEven(int scale)
Implement the XPath 2.0 round-half-to-even() function
|
abstract int |
signum()
Ask whether the value is negative, zero, or positive
|
String |
toString()
Produce a string representation of the value
|
asAtomic, asMapKey, atomize, checkPermittedContents, copyAsSubType, effectiveBooleanValue, getCanonicalLexicalRepresentation, getCardinality, getComponent, getItemType, getPrimitiveStringValue, getPrimitiveType, getSchemaComparable, getStringValue, getStringValueCS, getUType, head, identityHashCode, isIdentical, isIdentical, isNaN, itemAt, iterate, iterator, process, setTypeLabelgetLength, reduce, subsequenceclone, finalize, getClass, notify, notifyAll, wait, wait, waitasAtomicgetLengthreduce, subsequencepublic static NumericValue parseNumber(String in)
in - the input stringpublic abstract double getDoubleValue()
public abstract float getFloatValue()
public abstract BigDecimal getDecimalValue() throws XPathException
XPathException - if the value cannot be converted, for example if it is NaN or infinitepublic static boolean isInteger(AtomicValue value)
value - the value being testedpublic abstract long longValue()
throws XPathException
XPathException - if the value cannot be convertedpublic abstract NumericValue negate()
public abstract NumericValue floor()
public abstract NumericValue ceiling()
public abstract NumericValue round(int scale)
scale - the number of decimal places required in the result (supply 0 for rounding to an integer)public abstract NumericValue roundHalfToEven(int scale)
scale - the decimal position for rounding: e.g. 2 rounds to a
multiple of 0.01, while -2 rounds to a multiple of 100public abstract int signum()
public boolean isNegativeZero()
public abstract boolean isWholeNumber()
public abstract NumericValue abs()
public final AtomicMatchKey getXPathComparable(boolean ordered, StringCollator collator, int implicitTimezone)
getXPathComparable in class AtomicValueordered - true if an ordered comparison is required. In this case the result is null if the
type is unordered; in other cases the returned value will be a Comparable.collator - the collation to be used when comparing stringsimplicitTimezone - the implicit timezone in the dynamic context, used when comparing
dates/times with and without timezonepublic int compareTo(Object other)
compareTo in interface Comparableother - The other numeric valueClassCastException - if the other value is not a NumericValue
(the parameter is declared as Object to satisfy the Comparable
interface)public abstract int compareTo(long other)
other - the value to be compared withpublic final boolean equals(Object other)
equals in class AtomicValueother - the value to be compared with this onepublic abstract int hashCode()
public String toString()
toString in class AtomicValueCopyright (c) 2004-2014 Saxonica Limited. All rights reserved.