Interface UnitConverter
public interface UnitConverter
A converter of numeric values between different units.
Instances of this class are usually obtained through the Unit.getConverterTo(Unit) method.
- Since:
- 1.0
- Version:
- 1.0, August 8, 2016
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionconcatenate(UnitConverter converter) Concatenates this converter with another converter.doubleconvert(double value) Converts adoublevalue.Converts aNumbervalue.List<? extends UnitConverter> Returns the steps of fundamental converters making up this converter orthisif the converter is a fundamental converter.inverse()Returns the inverse of this converter.booleanIndicates if this converter is an identity converter.booleanisLinear()Indicates if this converter is linear.
-
Method Details
-
isIdentity
boolean isIdentity()Indicates if this converter is an identity converter. The identity converter returns its input argument (convert(x) == x).- Returns:
trueif this converter is an identity converter.
-
isLinear
boolean isLinear()Indicates if this converter is linear. A converter is linear if:convert(u + v) == convert(u) + convert(v)convert(r * u) == r * convert(u)
For linear converters the following property always hold:
y1 = c1.convert(x1); y2 = c2.convert(x2); assert y1*y2 == c1.concatenate(c2).convert(x1*x2);- Returns:
trueif this converter is linear;falseotherwise.
-
inverse
UnitConverter inverse()Returns the inverse of this converter. Ifxis a valid value, thenx == inverse().convert(convert(x))to within the accuracy of computer arithmetic.- Returns:
- the inverse of this converter.
-
convert
-
convert
double convert(double value) Converts adoublevalue.- Parameters:
value- the numeric value to convert.- Returns:
- the
doublevalue after conversion.
-
concatenate
Concatenates this converter with another converter. The resulting converter is equivalent to first converting by the specified converter (right converter), and then converting by this converter (left converter).- Parameters:
converter- the other converter to concatenate with this converter.- Returns:
- the concatenation of this converter with the other converter.
-
getConversionSteps
List<? extends UnitConverter> getConversionSteps()Returns the steps of fundamental converters making up this converter or
thisif the converter is a fundamental converter.For example,
converter1.getConversionSteps()returnsconverter1whileconverter1.concatenate(converter2).getConversionSteps()returnsconverter1, converter2.- Returns:
- the list of fundamental converters which concatenated make up this converter.
-