Package org.h2.value
Class ValueReal
Implementation of the REAL data type.
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) static final int
The approximate precision in decimal digits.(package private) static final int
The maximum display size of a REAL.private static final ValueReal
static final ValueReal
The value 1.(package private) static final int
The precision in bits.private final float
static final ValueReal
The value 0.static final int
Float.floatToIntBits(0f).Fields inherited from class org.h2.value.Value
ARRAY, ASSIGN_TO, BIGINT, BINARY, BLOB, BOOLEAN, CAST_TO, CHAR, CLOB, CONVERT_TO, DATE, DECFLOAT, DOUBLE, EMPTY_VALUES, ENUM, GEOMETRY, GROUP_BINARY_STRING, GROUP_BOOLEAN, GROUP_CHARACTER_STRING, GROUP_COLLECTION, GROUP_DATETIME, GROUP_INTERVAL_DT, GROUP_INTERVAL_YM, GROUP_NULL, GROUP_NUMERIC, GROUP_OTHER, GROUPS, INTEGER, INTERVAL_DAY, INTERVAL_DAY_TO_HOUR, INTERVAL_DAY_TO_MINUTE, INTERVAL_DAY_TO_SECOND, INTERVAL_HOUR, INTERVAL_HOUR_TO_MINUTE, INTERVAL_HOUR_TO_SECOND, INTERVAL_MINUTE, INTERVAL_MINUTE_TO_SECOND, INTERVAL_MONTH, INTERVAL_SECOND, INTERVAL_YEAR, INTERVAL_YEAR_TO_MONTH, JAVA_OBJECT, JSON, MAX_LONG_DECIMAL, MIN_LONG_DECIMAL, NULL, NUMERIC, REAL, ROW, SMALLINT, TIME, TIME_TZ, TIMESTAMP, TIMESTAMP_TZ, TINYINT, TYPE_COUNT, UNKNOWN, UUID, VARBINARY, VARCHAR, VARCHAR_IGNORECASE
Fields inherited from interface org.h2.util.HasSQL
ADD_PLAN_INFORMATION, DEFAULT_SQL_FLAGS, NO_CASTS, QUOTE_ONLY_WHEN_REQUIRED, REPLACE_LOBS_FOR_TRACE, TRACE_SQL_FLAGS
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionAdd a value and return the result.int
compareTypeSafe
(Value o, CompareMode mode, CastDataProvider provider) Compare this value against another value given that the values are of the same data type.Divide by a value and return the result.boolean
Check if the two values have the same hash code.static ValueReal
get
(float d) Get or create a REAL value for the given float.double
Returns this value as a Javadouble
value.float
getFloat()
Returns this value as a Javafloat
value.int
private StringBuilder
getSQL
(StringBuilder builder) getSQL
(StringBuilder builder, int sqlFlags) Appends the SQL statement of this object to the specified builder.Get the value as a string.getType()
Returns the data type.int
Get the value type.int
hashCode()
Take the modulus with a value and return the result.Multiply with a value and return the result.negate()
Return -value if this value support arithmetic operations.Subtract a value and return the result.Methods inherited from class org.h2.value.Value
cache, castTo, charLength, clearCache, compareTo, compareWithNull, containsNull, convertForAssignTo, convertTo, convertTo, convertTo, convertTo, convertTo, convertToAnyArray, convertToAnyRow, convertToBigint, convertToBoolean, convertToChar, convertToDate, convertToDouble, convertToEnum, convertToGeometry, convertToInt, convertToInt, convertToJavaObject, convertToReal, convertToSmallint, convertToTinyint, convertToUuid, getBoolean, getByte, getBytes, getBytesNoCopy, getDataConversionError, getDataConversionError, getHigherOrder, getHigherOrderKnown, getInputStream, getInputStream, getInt, getLong, getMemory, getReader, getReader, getShort, getTypeName, getUnsupportedExceptionForOperation, getValueTooLongException, isFalse, isTrue, octetLength, rangeCheck, toString
Methods inherited from class org.h2.value.VersionedValue
getCommittedValue, getCurrentValue, getOperationId, isCommitted
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.h2.util.HasSQL
getSQL, getTraceSQL
-
Field Details
-
PRECISION
static final int PRECISIONThe precision in bits.- See Also:
-
DECIMAL_PRECISION
static final int DECIMAL_PRECISIONThe approximate precision in decimal digits.- See Also:
-
DISPLAY_SIZE
static final int DISPLAY_SIZEThe maximum display size of a REAL. Example: -1.12345676E-20- See Also:
-
ZERO_BITS
public static final int ZERO_BITSFloat.floatToIntBits(0f).- See Also:
-
ZERO
The value 0. -
ONE
The value 1. -
NAN
-
value
private final float value
-
-
Constructor Details
-
ValueReal
private ValueReal(float value)
-
-
Method Details
-
add
Description copied from class:Value
Add a value and return the result. -
subtract
Description copied from class:Value
Subtract a value and return the result. -
negate
Description copied from class:Value
Return -value if this value support arithmetic operations. -
multiply
Description copied from class:Value
Multiply with a value and return the result. -
divide
Description copied from class:Value
Divide by a value and return the result. -
modulus
Description copied from class:Value
Take the modulus with a value and return the result. -
getSQL
Description copied from interface:HasSQL
Appends the SQL statement of this object to the specified builder.- Parameters:
builder
- string buildersqlFlags
- formatting flags- Returns:
- the specified string builder
-
getSQL
-
getType
Description copied from interface:Typed
Returns the data type. -
getValueType
public int getValueType()Description copied from class:Value
Get the value type.- Specified by:
getValueType
in classValue
- Returns:
- the value type
-
compareTypeSafe
Description copied from class:Value
Compare this value against another value given that the values are of the same data type.- Specified by:
compareTypeSafe
in classValue
- Parameters:
o
- the other valuemode
- the compare modeprovider
- the cast information provider- Returns:
- 0 if both values are equal, -1 if the other value is smaller, and 1 otherwise
-
getSignum
public int getSignum() -
getBigDecimal
- Overrides:
getBigDecimal
in classValue
-
getFloat
public float getFloat()Description copied from class:Value
Returns this value as a Javafloat
value. -
getDouble
public double getDouble()Description copied from class:Value
Returns this value as a Javadouble
value. -
getString
Description copied from class:Value
Get the value as a string. -
hashCode
public int hashCode() -
get
Get or create a REAL value for the given float.- Parameters:
d
- the float- Returns:
- the value
-
equals
Description copied from class:Value
Check if the two values have the same hash code. No data conversion is made; this method returns false if the other object is not of the same class. For some values, compareTo may return 0 even if equals return false. Example: ValueDecimal 0.0 and 0.00.
-