Class NumberOutput
java.lang.Object
tools.jackson.core.io.NumberOutput
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static intprivate static longprivate static longprivate static intprivate static long(package private) static final String(package private) static final Stringprivate static final int[]Encoded representations of 3-decimal-digit indexed values, where 3 LSB are ascii characters -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static int_full3(int t, byte[] b, int off) private static int_full3(int t, char[] b, int off) private static int_leading3(int t, byte[] b, int off) private static int_leading3(int t, char[] b, int off) private static int_outputFullBillion(int v, byte[] b, int off) private static int_outputFullBillion(int v, char[] b, int off) private static int_outputSmallestI(byte[] b, int off) private static int_outputSmallestI(char[] b, int off) private static int_outputSmallestL(byte[] b, int off) private static int_outputSmallestL(char[] b, int off) private static int_outputUptoBillion(int v, byte[] b, int off) private static int_outputUptoBillion(int v, char[] b, int off) private static int_outputUptoMillion(byte[] b, int off, int thousands, int ones) private static int_outputUptoMillion(char[] b, int off, int thousands, int ones) static intdivBy1000(int number) Optimized code for integer division by 1000; typically 50% higher throughput for calculationstatic booleannotFinite(double value) Helper method to verify whether givendoublevalue is finite (regular rational number} or not (NaN or Infinity).static booleannotFinite(float value) Helper method to verify whether givenfloatvalue is finite (regular rational number} or not (NaN or Infinity).static intoutputInt(int v, byte[] b, int off) static intoutputInt(int v, char[] b, int off) Method for appending value of givenintvalue into specifiedchar[].static intoutputLong(long v, byte[] b, int off) static intoutputLong(long v, char[] b, int off) Method for appending value of givenlongvalue into specifiedchar[].static StringtoString(double v) static StringtoString(double v, boolean useFastWriter) static StringtoString(float v) static StringtoString(float v, boolean useFastWriter)
-
Field Details
-
MILLION
private static int MILLION -
BILLION
private static int BILLION -
BILLION_L
private static long BILLION_L -
MIN_INT_AS_LONG
private static long MIN_INT_AS_LONG -
MAX_INT_AS_LONG
private static long MAX_INT_AS_LONG -
SMALLEST_INT
-
SMALLEST_LONG
-
TRIPLET_TO_CHARS
private static final int[] TRIPLET_TO_CHARSEncoded representations of 3-decimal-digit indexed values, where 3 LSB are ascii characters
-
-
Constructor Details
-
NumberOutput
public NumberOutput()
-
-
Method Details
-
outputInt
public static int outputInt(int v, char[] b, int off) Method for appending value of givenintvalue into specifiedchar[].NOTE: caller must guarantee that the output buffer has enough room for String representation of the value.
- Parameters:
v- Value to append to bufferb- Buffer to append value to: caller must guarantee there is enough roomoff- Offset within output buffer (b) to append number at- Returns:
- Offset within buffer after outputting
int
-
outputInt
public static int outputInt(int v, byte[] b, int off) -
outputLong
public static int outputLong(long v, char[] b, int off) Method for appending value of givenlongvalue into specifiedchar[].NOTE: caller must guarantee that the output buffer has enough room for String representation of the value.
- Parameters:
v- Value to append to bufferb- Buffer to append value to: caller must guarantee there is enough roomoff- Offset within output buffer (b) to append number at- Returns:
- Offset within buffer after outputting
long
-
outputLong
public static int outputLong(long v, byte[] b, int off) -
divBy1000
public static int divBy1000(int number) Optimized code for integer division by 1000; typically 50% higher throughput for calculation- Since:
- 2.17
-
toString
- Parameters:
v- double- Returns:
- double as a string
-
toString
- Parameters:
v- doubleuseFastWriter- whether to use Schubfach algorithm to write output (default false)- Returns:
- double as a string
-
toString
- Parameters:
v- float- Returns:
- float as a string
-
toString
- Parameters:
v- floatuseFastWriter- whether to use Schubfach algorithm to write output (default false)- Returns:
- float as a string
-
notFinite
public static boolean notFinite(double value) Helper method to verify whether givendoublevalue is finite (regular rational number} or not (NaN or Infinity).- Parameters:
value-doublevalue to check- Returns:
- True if number is NOT finite (is Infinity or NaN); false otherwise
-
notFinite
public static boolean notFinite(float value) Helper method to verify whether givenfloatvalue is finite (regular rational number} or not (NaN or Infinity).- Parameters:
value-floatvalue to check- Returns:
- True if number is NOT finite (is Infinity or NaN); false otherwise
-
_outputUptoBillion
private static int _outputUptoBillion(int v, char[] b, int off) -
_outputFullBillion
private static int _outputFullBillion(int v, char[] b, int off) -
_outputUptoBillion
private static int _outputUptoBillion(int v, byte[] b, int off) -
_outputFullBillion
private static int _outputFullBillion(int v, byte[] b, int off) -
_outputUptoMillion
private static int _outputUptoMillion(char[] b, int off, int thousands, int ones) -
_outputUptoMillion
private static int _outputUptoMillion(byte[] b, int off, int thousands, int ones) -
_leading3
private static int _leading3(int t, char[] b, int off) -
_leading3
private static int _leading3(int t, byte[] b, int off) -
_full3
private static int _full3(int t, char[] b, int off) -
_full3
private static int _full3(int t, byte[] b, int off) -
_outputSmallestL
private static int _outputSmallestL(char[] b, int off) -
_outputSmallestL
private static int _outputSmallestL(byte[] b, int off) -
_outputSmallestI
private static int _outputSmallestI(char[] b, int off) -
_outputSmallestI
private static int _outputSmallestI(byte[] b, int off)
-