Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  package com.fasterxml.jackson.databind.node;
  
  
JsonNode implementation for efficiently containing 32-bit `float` values.

Since:
2.2
 
 public final class FloatNode extends NumericNode
 {
     protected final float _value;
 
     /* 
     /**********************************************************
     /* Construction
     /**********************************************************
      */
 
     public FloatNode(float v) {  = v; }
 
     public static FloatNode valueOf(float v) { return new FloatNode(v); }
 
     /* 
     /**********************************************************
     /* BaseJsonNode extended API
     /**********************************************************
      */
 
     @Override public JsonToken asToken() { return .; }
 
     @Override
     public JsonParser.NumberType numberType() { return ..; }
 
     /* 
     /**********************************************************
     /* Overrridden JsonNode methods
     /**********************************************************
      */
 
     @Override
     public boolean isFloatingPointNumber() { return true; }
 
     @Override
     public boolean isFloat() { return true; }
 
     @Override public boolean canConvertToInt() {
         return ( >= . &&  <= .);
     }
 
     @Override public boolean canConvertToLong() {
         return ( >= . &&  <= .);
     }
     
     @Override
     public Number numberValue() {
         return Float.valueOf();
     }
 
     @Override
     public short shortValue() { return (short; }
 
     @Override
     public int intValue() { return (int; }
 
     @Override
     public long longValue() { return (long; }
 
     @Override
     public float floatValue() { return (float; }
     
     @Override
     public double doubleValue() { return ; }
 
     @Override
     public BigDecimal decimalValue() { return BigDecimal.valueOf(); }
 
     @Override
     public BigInteger bigIntegerValue() {
         return decimalValue().toBigInteger();
     }
 
     @Override
     public String asText() {
         return NumberOutput.toString();
     }
 
     @Override
     public final void serialize(JsonGenerator jgSerializerProvider provider)
         throws IOExceptionJsonProcessingException
     {
         jg.writeNumber();
    }
    @Override
    public boolean equals(Object o)
    {
        if (o == thisreturn true;
        if (o == nullreturn false;
        if (o.getClass() != getClass()) { // final class, can do this
            return false;
        }
        // We must account for NaNs: NaN does not equal NaN, therefore we have
        // to use Double.compare().
        final float otherValue = ((FloatNodeo).;
        return Float.compare(otherValue) == 0;
    }
    @Override
    public int hashCode() {
        return Float.floatToIntBits();
    }
New to GrepCode? Check out our FAQ X