Package org.eclipse.rdf4j.model.impl
Class NumericLiteral
- java.lang.Object
-
- org.eclipse.rdf4j.model.base.AbstractLiteral
-
- org.eclipse.rdf4j.model.impl.NumericLiteral
-
- All Implemented Interfaces:
Serializable
,Literal
,Value
public class NumericLiteral extends AbstractLiteral
An extension ofAbstractLiteral
that stores a numeric value to avoid parsing.- Author:
- David Huynh, Jerven Bolleman
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
NumericLiteral(byte number)
Creates an xsd:byte typed litral with the specified value.protected
NumericLiteral(double n)
Creates an xsd:double typed litral with the specified value.protected
NumericLiteral(float n)
Creates an xsd:float typed litral with the specified value.protected
NumericLiteral(int number)
Creates an xsd:int typed litral with the specified value.protected
NumericLiteral(long n)
Creates an xsd:long typed litral with the specified value.protected
NumericLiteral(short number)
Creates an xsd:short typed litral with the specified value.protected
NumericLiteral(Number number, CoreDatatype datatype)
protected
NumericLiteral(Number number, IRI datatype)
Creates a literal with the specified value and datatype.protected
NumericLiteral(Number number, XSD.Datatype datatype)
Deprecated, for removal: This API element is subject to removal in a future version.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description byte
byteValue()
Returns the byte value of this literal.double
doubleValue()
Returns the double value of this literal.boolean
equals(Object o)
Compares this literal to another object.float
floatValue()
Returns the float value of this literal.CoreDatatype
getCoreDatatype()
CoreDatatype is an interface for natively supported datatypes in RDF4J.IRI
getDatatype()
Gets the datatype for this literal.String
getLabel()
Gets the label (the lexical value) of this literal.Optional<String>
getLanguage()
Gets the language tag for this literal, normalized to lower case.int
intValue()
Returns the int value of this literal.long
longValue()
Returns the long value of this literal.short
shortValue()
Returns the short value of this literal.-
Methods inherited from class org.eclipse.rdf4j.model.base.AbstractLiteral
booleanValue, calendarValue, decimalValue, hashCode, integerValue, stringValue, temporalAccessorValue, temporalAmountValue, toString
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.eclipse.rdf4j.model.Value
isBNode, isIRI, isResource, isTriple
-
-
-
-
Constructor Detail
-
NumericLiteral
protected NumericLiteral(Number number, IRI datatype)
Creates a literal with the specified value and datatype.
-
NumericLiteral
@Deprecated(since="4.0.0", forRemoval=true) protected NumericLiteral(Number number, XSD.Datatype datatype)
Deprecated, for removal: This API element is subject to removal in a future version.
-
NumericLiteral
protected NumericLiteral(Number number, CoreDatatype datatype)
-
NumericLiteral
protected NumericLiteral(byte number)
Creates an xsd:byte typed litral with the specified value.
-
NumericLiteral
protected NumericLiteral(short number)
Creates an xsd:short typed litral with the specified value.
-
NumericLiteral
protected NumericLiteral(int number)
Creates an xsd:int typed litral with the specified value.
-
NumericLiteral
protected NumericLiteral(long n)
Creates an xsd:long typed litral with the specified value.
-
NumericLiteral
protected NumericLiteral(float n)
Creates an xsd:float typed litral with the specified value.
-
NumericLiteral
protected NumericLiteral(double n)
Creates an xsd:double typed litral with the specified value.
-
-
Method Detail
-
byteValue
public byte byteValue()
Description copied from interface:Literal
Returns the byte value of this literal.- Specified by:
byteValue
in interfaceLiteral
- Overrides:
byteValue
in classAbstractLiteral
- Returns:
- The byte value of the literal.
-
shortValue
public short shortValue()
Description copied from interface:Literal
Returns the short value of this literal.- Specified by:
shortValue
in interfaceLiteral
- Overrides:
shortValue
in classAbstractLiteral
- Returns:
- The short value of the literal.
-
intValue
public int intValue()
Description copied from interface:Literal
Returns the int value of this literal.- Specified by:
intValue
in interfaceLiteral
- Overrides:
intValue
in classAbstractLiteral
- Returns:
- The int value of the literal.
-
longValue
public long longValue()
Description copied from interface:Literal
Returns the long value of this literal.- Specified by:
longValue
in interfaceLiteral
- Overrides:
longValue
in classAbstractLiteral
- Returns:
- The long value of the literal.
-
floatValue
public float floatValue()
Description copied from interface:Literal
Returns the float value of this literal.- Specified by:
floatValue
in interfaceLiteral
- Overrides:
floatValue
in classAbstractLiteral
- Returns:
- The float value of the literal.
-
doubleValue
public double doubleValue()
Description copied from interface:Literal
Returns the double value of this literal.- Specified by:
doubleValue
in interfaceLiteral
- Overrides:
doubleValue
in classAbstractLiteral
- Returns:
- The double value of the literal.
-
getLabel
public String getLabel()
Description copied from interface:Literal
Gets the label (the lexical value) of this literal.- Returns:
- The literal's label.
-
getLanguage
public Optional<String> getLanguage()
Description copied from interface:Literal
Gets the language tag for this literal, normalized to lower case.- Returns:
- The language tag for this literal, or
Optional.empty()
if it doesn't have one.
-
getDatatype
public IRI getDatatype()
Description copied from interface:Literal
Gets the datatype for this literal.If
Literal.getLanguage()
returns a non-empty value than this must returnrdf:langString
. If no datatype was assigned to this literal by the creator, then this method must returnxsd:string
.- Returns:
- The datatype for this literal.
-
getCoreDatatype
public CoreDatatype getCoreDatatype()
Description copied from interface:Literal
CoreDatatype is an interface for natively supported datatypes in RDF4J. This includes, among others, the XML Schema datatypes and rdf:langString. CoreDatatypes are implemented as enums and more performant and convenient to work with than IRI-based datatypes. The constant {@link CoreDatatype#NONE)} is used to represent a datatype that is not one of the supported core datatypes.- Returns:
- The CoreDatatype or {@link CoreDatatype#NONE)} if the datatype matches none of the core datatypes. This method will not return null.
-
equals
public boolean equals(Object o)
Description copied from interface:Literal
Compares this literal to another object.- Specified by:
equals
in interfaceLiteral
- Overrides:
equals
in classAbstractLiteral
- Parameters:
o
- the object to compare this literal to- Returns:
true
, if the other object is an instance ofLiteral
and if their labels, language tags and datatypes are equal
-
-