Class Long
- All Implemented Interfaces:
Serializable,Comparable<Long>
public final class Long extends Number implements Comparable<Long>
long.
Implementation note: The "bit twiddling" methods in this class use techniques described in Henry S. Warren, Jr.'s Hacker's Delight, (Addison Wesley, 2002) and Sean Anderson's Bit Twiddling Hacks.
- Since:
- 1.0
- See Also:
Integer, Serialized Form
-
Field Summary
Fields Modifier and Type Field Description static longMAX_VALUEConstant for the maximumlongvalue, 263-1.static longMIN_VALUEConstant for the minimumlongvalue, -263.static intSIZEConstant for the number of bits needed to represent alongin two's complement form.static Class<Long>TYPETheClassobject that represents the primitive typelong. -
Constructor Summary
-
Method Summary
Modifier and Type Method Description static intbitCount(long v)Counts the number of 1 bits in the specified long value; this is also referred to as population count.bytebyteValue()Returns this object's value as a byte.static intcompare(long lhs, long rhs)Compares twolongvalues.intcompareTo(Long object)Compares this object to the specified long object to determine their relative order.static Longdecode(String string)Parses the specified string and returns aLonginstance if the string can be decoded into a long value.doubledoubleValue()Returns this object's value as a double.booleanequals(Object o)Compares this instance with the specified object and indicates if they are equal.floatfloatValue()Returns this object's value as a float.static LonggetLong(String string)Returns theLongvalue of the system property identified bystring.static LonggetLong(String string, long defaultValue)Returns theLongvalue of the system property identified bystring.static LonggetLong(String string, Long defaultValue)Returns theLongvalue of the system property identified bystring.inthashCode()Returns an integer hash code for this object.static longhighestOneBit(long v)Determines the highest (leftmost) bit of the specified long value that is 1 and returns the bit mask value for that bit.intintValue()Returns this object's value as an int.longlongValue()Gets the primitive value of this long.static longlowestOneBit(long v)Determines the lowest (rightmost) bit of the specified long value that is 1 and returns the bit mask value for that bit.static intnumberOfLeadingZeros(long v)Determines the number of leading zeros in the specified long value prior to thehighest one bit.static intnumberOfTrailingZeros(long v)Determines the number of trailing zeros in the specified long value after thelowest one bit.static longparseLong(String string)Parses the specified string as a signed decimal long value.static longparseLong(String string, int radix)Parses the specified string as a signed long value using the specified radix.static longreverse(long v)Reverses the order of the bits of the specified long value.static longreverseBytes(long v)Reverses the order of the bytes of the specified long value.static longrotateLeft(long v, int distance)Rotates the bits of the specified long value to the left by the specified number of bits.static longrotateRight(long v, int distance)Rotates the bits of the specified long value to the right by the specified number of bits.shortshortValue()Returns this object's value as a short.static intsignum(long v)Returns the value of thesignumfunction for the specified long value.static StringtoBinaryString(long v)Converts the specified long value into its binary string representation.static StringtoHexString(long v)Converts the specified long value into its hexadecimal string representation.static StringtoOctalString(long v)Converts the specified long value into its octal string representation.StringtoString()Returns a string containing a concise, human-readable description of this object.static StringtoString(long n)Converts the specified long value into its decimal string representation.static StringtoString(long v, int radix)Converts the specified signed long value into a string representation based on the specified radix.static LongvalueOf(long v)Returns aLonginstance for the specified long value.static LongvalueOf(String string)Parses the specified string as a signed decimal long value.static LongvalueOf(String string, int radix)Parses the specified string as a signed long value using the specified radix.
-
Field Details
-
MAX_VALUE
public static final long MAX_VALUEConstant for the maximumlongvalue, 263-1.- See Also:
- Constant Field Values
-
MIN_VALUE
public static final long MIN_VALUEConstant for the minimumlongvalue, -263.- See Also:
- Constant Field Values
-
TYPE
TheClassobject that represents the primitive typelong. -
SIZE
public static final int SIZEConstant for the number of bits needed to represent alongin two's complement form.- Since:
- 1.5
- See Also:
- Constant Field Values
-
-
Constructor Details
-
Long
public Long(long value)Constructs a newLongwith the specified primitive long value.- Parameters:
value- the primitive long value to store in the new instance.
-
Long
Constructs a newLongfrom the specified string.- Parameters:
string- the string representation of a long value.- Throws:
NumberFormatException- ifstringcannot be parsed as a long value.- See Also:
parseLong(String)
-
-
Method Details
-
byteValue
public byte byteValue()Description copied from class:NumberReturns this object's value as a byte. Might involve rounding and/or truncating the value, so it fits into a byte. -
compareTo
Compares this object to the specified long object to determine their relative order.- Specified by:
compareToin interfaceComparable<Long>- Parameters:
object- the long object to compare this object to.- Returns:
- a negative value if the value of this long is less than the value
of
object; 0 if the value of this long and the value ofobjectare equal; a positive value if the value of this long is greater than the value ofobject. - Since:
- 1.2
- See Also:
Comparable
-
compare
public static int compare(long lhs, long rhs)Compares twolongvalues.- Returns:
- 0 if lhs = rhs, less than 0 if lhs < rhs, and greater than 0 if lhs > rhs.
- Since:
- 1.7
-
decode
Parses the specified string and returns aLonginstance if the string can be decoded into a long value. The string may be an optional minus sign "-" followed by a hexadecimal ("0x..." or "#..."), octal ("0..."), or decimal ("...") representation of a long.- Parameters:
string- a string representation of a long value.- Returns:
- a
Longcontaining the value represented bystring. - Throws:
NumberFormatException- ifstringcannot be parsed as a long value.
-
doubleValue
public double doubleValue()Description copied from class:NumberReturns this object's value as a double. Might involve rounding.- Specified by:
doubleValuein classNumber- Returns:
- the primitive double value of this object.
-
equals
Compares this instance with the specified object and indicates if they are equal. In order to be equal,omust be an instance ofLongand have the same long value as this object.- Overrides:
equalsin classObject- Parameters:
o- the object to compare this long with.- Returns:
trueif the specified object is equal to thisLong;falseotherwise.- See Also:
Object.hashCode()
-
floatValue
public float floatValue()Description copied from class:NumberReturns this object's value as a float. Might involve rounding.- Specified by:
floatValuein classNumber- Returns:
- the primitive float value of this object.
-
getLong
Returns theLongvalue of the system property identified bystring. Returnsnullifstringisnullor empty, if the property can not be found or if its value can not be parsed as a long.- Parameters:
string- the name of the requested system property.- Returns:
- the requested property's value as a
Longornull.
-
getLong
Returns theLongvalue of the system property identified bystring. Returns the specified default value ifstringisnullor empty, if the property can not be found or if its value can not be parsed as a long.- Parameters:
string- the name of the requested system property.defaultValue- the default value that is returned if there is no long system property with the requested name.- Returns:
- the requested property's value as a
Longor the default value.
-
getLong
Returns theLongvalue of the system property identified bystring. Returns the specified default value ifstringisnullor empty, if the property can not be found or if its value can not be parsed as a long.- Parameters:
string- the name of the requested system property.defaultValue- the default value that is returned if there is no long system property with the requested name.- Returns:
- the requested property's value as a
Longor the default value.
-
hashCode
public int hashCode()Description copied from class:ObjectReturns an integer hash code for this object. By contract, any two objects for whichObject.equals(java.lang.Object)returnstruemust return the same hash code value. This means that subclasses ofObjectusually override both methods or neither method.Note that hash values must not change over time unless information used in equals comparisons also changes.
See Writing a correct
hashCodemethod if you intend implementing your ownhashCodemethod.- Overrides:
hashCodein classObject- Returns:
- this object's hash code.
- See Also:
Object.equals(java.lang.Object)
-
intValue
public int intValue()Description copied from class:NumberReturns this object's value as an int. Might involve rounding and/or truncating the value, so it fits into an int. -
longValue
public long longValue()Gets the primitive value of this long. -
parseLong
Parses the specified string as a signed decimal long value. The ASCII character - ('-') is recognized as the minus sign.- Parameters:
string- the string representation of a long value.- Returns:
- the primitive long value represented by
string. - Throws:
NumberFormatException- ifstringcannot be parsed as a long value.
-
parseLong
Parses the specified string as a signed long value using the specified radix. The ASCII character - ('-') is recognized as the minus sign.- Parameters:
string- the string representation of a long value.radix- the radix to use when parsing.- Returns:
- the primitive long value represented by
stringusingradix. - Throws:
NumberFormatException- ifstringcannot be parsed as a long value, orradix < Character.MIN_RADIX || radix > Character.MAX_RADIX.
-
shortValue
public short shortValue()Description copied from class:NumberReturns this object's value as a short. Might involve rounding and/or truncating the value, so it fits into a short.- Overrides:
shortValuein classNumber- Returns:
- the primitive short value of this object.
-
toBinaryString
Converts the specified long value into its binary string representation. The returned string is a concatenation of '0' and '1' characters.- Parameters:
v- the long value to convert.- Returns:
- the binary string representation of
v.
-
toHexString
Converts the specified long value into its hexadecimal string representation. The returned string is a concatenation of characters from '0' to '9' and 'a' to 'f'.- Parameters:
v- the long value to convert.- Returns:
- the hexadecimal string representation of
l.
-
toOctalString
Converts the specified long value into its octal string representation. The returned string is a concatenation of characters from '0' to '7'.- Parameters:
v- the long value to convert.- Returns:
- the octal string representation of
l.
-
toString
Description copied from class:ObjectReturns a string containing a concise, human-readable description of this object. Subclasses are encouraged to override this method and provide an implementation that takes into account the object's type and data. The default implementation is equivalent to the following expression:getClass().getName() + '@' + Integer.toHexString(hashCode())
See Writing a useful
toStringmethod if you intend implementing your owntoStringmethod. -
toString
Converts the specified long value into its decimal string representation. The returned string is a concatenation of a minus sign if the number is negative and characters from '0' to '9'.- Parameters:
n- the long to convert.- Returns:
- the decimal string representation of
l.
-
toString
Converts the specified signed long value into a string representation based on the specified radix. The returned string is a concatenation of a minus sign if the number is negative and characters from '0' to '9' and 'a' to 'z', depending on the radix. Ifradixis not in the interval defined byCharacter.MIN_RADIXandCharacter.MAX_RADIXthen 10 is used as the base for the conversion.This method treats its argument as signed. If you want to convert an unsigned value to one of the common non-decimal bases, you may find
toBinaryString(long),#toHexString, ortoOctalString(long)more convenient.- Parameters:
v- the signed long to convert.radix- the base to use for the conversion.- Returns:
- the string representation of
v.
-
valueOf
Parses the specified string as a signed decimal long value.- Parameters:
string- the string representation of a long value.- Returns:
- a
Longinstance containing the long value represented bystring. - Throws:
NumberFormatException- ifstringcannot be parsed as a long value.- See Also:
parseLong(String)
-
valueOf
Parses the specified string as a signed long value using the specified radix.- Parameters:
string- the string representation of a long value.radix- the radix to use when parsing.- Returns:
- a
Longinstance containing the long value represented bystringusingradix. - Throws:
NumberFormatException- ifstringcannot be parsed as a long value, orradix < Character.MIN_RADIX || radix > Character.MAX_RADIX.- See Also:
parseLong(String, int)
-
highestOneBit
public static long highestOneBit(long v)Determines the highest (leftmost) bit of the specified long value that is 1 and returns the bit mask value for that bit. This is also referred to as the Most Significant 1 Bit. Returns zero if the specified long is zero.- Parameters:
v- the long to examine.- Returns:
- the bit mask indicating the highest 1 bit in
v. - Since:
- 1.5
-
lowestOneBit
public static long lowestOneBit(long v)Determines the lowest (rightmost) bit of the specified long value that is 1 and returns the bit mask value for that bit. This is also referred to as the Least Significant 1 Bit. Returns zero if the specified long is zero.- Parameters:
v- the long to examine.- Returns:
- the bit mask indicating the lowest 1 bit in
v. - Since:
- 1.5
-
numberOfLeadingZeros
public static int numberOfLeadingZeros(long v)Determines the number of leading zeros in the specified long value prior to thehighest one bit.- Parameters:
v- the long to examine.- Returns:
- the number of leading zeros in
v. - Since:
- 1.5
-
numberOfTrailingZeros
public static int numberOfTrailingZeros(long v)Determines the number of trailing zeros in the specified long value after thelowest one bit.- Parameters:
v- the long to examine.- Returns:
- the number of trailing zeros in
v. - Since:
- 1.5
-
bitCount
public static int bitCount(long v)Counts the number of 1 bits in the specified long value; this is also referred to as population count.- Parameters:
v- the long to examine.- Returns:
- the number of 1 bits in
v. - Since:
- 1.5
-
rotateLeft
public static long rotateLeft(long v, int distance)Rotates the bits of the specified long value to the left by the specified number of bits.- Parameters:
v- the long value to rotate left.distance- the number of bits to rotate.- Returns:
- the rotated value.
- Since:
- 1.5
-
rotateRight
public static long rotateRight(long v, int distance)Rotates the bits of the specified long value to the right by the specified number of bits.- Parameters:
v- the long value to rotate right.distance- the number of bits to rotate.- Returns:
- the rotated value.
- Since:
- 1.5
-
reverseBytes
public static long reverseBytes(long v)Reverses the order of the bytes of the specified long value.- Parameters:
v- the long value for which to reverse the byte order.- Returns:
- the reversed value.
- Since:
- 1.5
-
reverse
public static long reverse(long v)Reverses the order of the bits of the specified long value.- Parameters:
v- the long value for which to reverse the bit order.- Returns:
- the reversed value.
- Since:
- 1.5
-
signum
public static int signum(long v)Returns the value of thesignumfunction for the specified long value.- Parameters:
v- the long value to check.- Returns:
- -1 if
vis negative, 1 ifvis positive, 0 ifvis zero. - Since:
- 1.5
-
valueOf
Returns aLonginstance for the specified long value.If it is not necessary to get a new
Longinstance, it is recommended to use this method instead of the constructor, since it maintains a cache of instances which may result in better performance.- Parameters:
v- the long value to store in the instance.- Returns:
- a
Longinstance containingv. - Since:
- 1.5
-