java.lang

Class Long

public final class Long extends Number implements Comparable<Long>

Instances of class Long represent primitive long values. Additionally, this class provides various helper functions and variables related to longs.

Since: 1.0

UNKNOWN: updated to 1.5

Field Summary
static longMAX_VALUE
The maximum value a long can represent is 9223372036854775807 (or 263 - 1).
static longMIN_VALUE
The minimum value a long can represent is -9223372036854775808L (or -263).
static intSIZE
The number of bits needed to represent a long.
static Class<Long>TYPE
The primitive type long is represented by this Class object.
Constructor Summary
Long(long value)
Create a Long object representing the value of the long argument.
Long(String s)
Create a Long object representing the value of the argument after conversion to a long.
Method Summary
static intbitCount(long x)
Return the number of bits set in x.
bytebyteValue()
Return the value of this Long as a byte.
intcompareTo(Long l)
Compare two Longs numerically by comparing their long values.
static Longdecode(String str)
Convert the specified String into a Long.
doubledoubleValue()
Return the value of this Long as a double.
booleanequals(Object obj)
Returns true if obj is an instance of Long and represents the same long value.
floatfloatValue()
Return the value of this Long as a float.
static LonggetLong(String nm)
Get the specified system property as a Long.
static LonggetLong(String nm, long val)
Get the specified system property as a Long, or use a default long value if the property is not found or is not decodable.
static LonggetLong(String nm, Long def)
Get the specified system property as a Long, or use a default Long value if the property is not found or is not decodable.
inthashCode()
Return a hashcode representing this Object.
static longhighestOneBit(long value)
Find the highest set bit in value, and return a new value with only that bit set.
intintValue()
Return the value of this Long as an int.
longlongValue()
Return the value of this Long.
static longlowestOneBit(long value)
Find the lowest set bit in value, and return a new value with only that bit set.
static intnumberOfLeadingZeros(long value)
Return the number of leading zeros in value.
static intnumberOfTrailingZeros(long value)
Find the number of trailing zeros in value.
static longparseLong(String str, int radix)
Converts the specified String into an int using the specified radix (base).
static longparseLong(String s)
Converts the specified String into a long.
static longreverse(long val)
Reverse the bits in val.
static longreverseBytes(long val)
Reverse the bytes in val.
static longrotateLeft(long x, int distance)
Rotate x to the left by distance bits.
static longrotateRight(long x, int distance)
Rotate x to the right by distance bits.
shortshortValue()
Return the value of this Long as a short.
static intsignum(long x)
Return 1 if x is positive, -1 if it is negative, and 0 if it is zero.
static StringtoBinaryString(long l)
Converts the long to a String assuming it is unsigned in base 2.
static StringtoHexString(long l)
Converts the long to a String assuming it is unsigned in base 16.
static StringtoOctalString(long l)
Converts the long to a String assuming it is unsigned in base 8.
static StringtoString(long num, int radix)
Converts the long to a String using the specified radix (base).
static StringtoString(long num)
Converts the long to a String and assumes a radix of 10.
StringtoString()
Converts the Long value to a String and assumes a radix of 10.
static LongvalueOf(String s, int radix)
Creates a new Long object using the String and specified radix (base).
static LongvalueOf(String s)
Creates a new Long object using the String, assuming a radix of 10.
static LongvalueOf(long val)
Returns a Long object wrapping the value.

Field Detail

MAX_VALUE

public static final long MAX_VALUE
The maximum value a long can represent is 9223372036854775807 (or 263 - 1).

MIN_VALUE

public static final long MIN_VALUE
The minimum value a long can represent is -9223372036854775808L (or -263).

SIZE

public static final int SIZE
The number of bits needed to represent a long.

Since: 1.5

TYPE

public static final Class<Long> TYPE
The primitive type long is represented by this Class object.

Since: 1.1

Constructor Detail

Long

public Long(long value)
Create a Long object representing the value of the long argument.

Parameters: value the value to use

Long

public Long(String s)
Create a Long object representing the value of the argument after conversion to a long.

Parameters: s the string to convert

Throws: NumberFormatException if the String does not contain a long

See Also: valueOf

Method Detail

bitCount

public static int bitCount(long x)
Return the number of bits set in x.

Parameters: x value to examine

Since: 1.5

byteValue

public byte byteValue()
Return the value of this Long as a byte.

Returns: the byte value

compareTo

public int compareTo(Long l)
Compare two Longs numerically by comparing their long values. The result is positive if the first is greater, negative if the second is greater, and 0 if the two are equal.

Parameters: l the Long to compare

Returns: the comparison

Since: 1.2

decode

public static Long decode(String str)
Convert the specified String into a Long. The String may represent decimal, hexadecimal, or octal numbers.

The extended BNF grammar is as follows:

 DecodableString:
      ( [ - ] DecimalNumber )
    | ( [ - ] ( 0x | 0X
              | # ) HexDigit { HexDigit } )
    | ( [ - ] 0 { OctalDigit } )
 DecimalNumber:
        DecimalDigit except '0' { DecimalDigit }
 DecimalDigit:
        Character.digit(d, 10) has value 0 to 9
 OctalDigit:
        Character.digit(d, 8) has value 0 to 7
 DecimalDigit:
        Character.digit(d, 16) has value 0 to 15
 
Finally, the value must be in the range MIN_VALUE to MAX_VALUE, or an exception is thrown. Note that you cannot use a trailing 'l' or 'L', unlike in Java source code.

Parameters: str the String to interpret

Returns: the value of the String as a Long

Throws: NumberFormatException if s cannot be parsed as a long NullPointerException if s is null

Since: 1.2

doubleValue

public double doubleValue()
Return the value of this Long as a double.

Returns: the double value

equals

public boolean equals(Object obj)
Returns true if obj is an instance of Long and represents the same long value.

Parameters: obj the object to compare

Returns: whether these Objects are semantically equal

floatValue

public float floatValue()
Return the value of this Long as a float.

Returns: the float value

getLong

public static Long getLong(String nm)
Get the specified system property as a Long. The decode() method will be used to interpret the value of the property.

Parameters: nm the name of the system property

Returns: the system property as a Long, or null if the property is not found or cannot be decoded

Throws: SecurityException if accessing the system property is forbidden

See Also: getProperty decode

getLong

public static Long getLong(String nm, long val)
Get the specified system property as a Long, or use a default long value if the property is not found or is not decodable. The decode() method will be used to interpret the value of the property.

Parameters: nm the name of the system property val the default value

Returns: the value of the system property, or the default

Throws: SecurityException if accessing the system property is forbidden

See Also: getProperty decode

getLong

public static Long getLong(String nm, Long def)
Get the specified system property as a Long, or use a default Long value if the property is not found or is not decodable. The decode() method will be used to interpret the value of the property.

Parameters: nm the name of the system property def the default value

Returns: the value of the system property, or the default

Throws: SecurityException if accessing the system property is forbidden

See Also: getProperty decode

hashCode

public int hashCode()
Return a hashcode representing this Object. Long's hash code is calculated by (int) (value ^ (value >> 32)).

Returns: this Object's hash code

highestOneBit

public static long highestOneBit(long value)
Find the highest set bit in value, and return a new value with only that bit set.

Parameters: value the value to examine

Since: 1.5

intValue

public int intValue()
Return the value of this Long as an int.

Returns: the int value

longValue

public long longValue()
Return the value of this Long.

Returns: the long value

lowestOneBit

public static long lowestOneBit(long value)
Find the lowest set bit in value, and return a new value with only that bit set.

Parameters: value the value to examine

Since: 1.5

numberOfLeadingZeros

public static int numberOfLeadingZeros(long value)
Return the number of leading zeros in value.

Parameters: value the value to examine

Since: 1.5

numberOfTrailingZeros

public static int numberOfTrailingZeros(long value)
Find the number of trailing zeros in value.

Parameters: value the value to examine

Since: 1.5

parseLong

public static long parseLong(String str, int radix)
Converts the specified String into an int using the specified radix (base). The string must not be null or empty. It may begin with an optional '-', which will negate the answer, provided that there are also valid digits. Each digit is parsed as if by Character.digit(d, radix), and must be in the range 0 to radix - 1. Finally, the result must be within MIN_VALUE to MAX_VALUE, inclusive. Unlike Double.parseDouble, you may not have a leading '+'; and 'l' or 'L' as the last character is only valid in radices 22 or greater, where it is a digit and not a type indicator.

Parameters: str the String to convert radix the radix (base) to use in the conversion

Returns: the String argument converted to long

Throws: NumberFormatException if s cannot be parsed as a long

parseLong

public static long parseLong(String s)
Converts the specified String into a long. This function assumes a radix of 10.

Parameters: s the String to convert

Returns: the int value of s

Throws: NumberFormatException if s cannot be parsed as a long

See Also: Long

reverse

public static long reverse(long val)
Reverse the bits in val.

Since: 1.5

reverseBytes

public static long reverseBytes(long val)
Reverse the bytes in val.

Since: 1.5

rotateLeft

public static long rotateLeft(long x, int distance)
Rotate x to the left by distance bits.

Parameters: x the value to rotate distance the number of bits by which to rotate

Since: 1.5

rotateRight

public static long rotateRight(long x, int distance)
Rotate x to the right by distance bits.

Parameters: x the value to rotate distance the number of bits by which to rotate

Since: 1.5

shortValue

public short shortValue()
Return the value of this Long as a short.

Returns: the short value

signum

public static int signum(long x)
Return 1 if x is positive, -1 if it is negative, and 0 if it is zero.

Parameters: x the value to examine

Since: 1.5

toBinaryString

public static String toBinaryString(long l)
Converts the long to a String assuming it is unsigned in base 2.

Parameters: l the long to convert to String

Returns: the String representation of the argument

toHexString

public static String toHexString(long l)
Converts the long to a String assuming it is unsigned in base 16.

Parameters: l the long to convert to String

Returns: the String representation of the argument

toOctalString

public static String toOctalString(long l)
Converts the long to a String assuming it is unsigned in base 8.

Parameters: l the long to convert to String

Returns: the String representation of the argument

toString

public static String toString(long num, int radix)
Converts the long to a String using the specified radix (base). If the radix exceeds Character.MIN_RADIX or Character.MAX_RADIX, 10 is used instead. If the result is negative, the leading character is '-' ('\\u002D'). The remaining characters come from Character.forDigit(digit, radix) ('0'-'9','a'-'z').

Parameters: num the long to convert to String radix the radix (base) to use in the conversion

Returns: the String representation of the argument

toString

public static String toString(long num)
Converts the long to a String and assumes a radix of 10.

Parameters: num the long to convert to String

Returns: the String representation of the argument

See Also: Long

toString

public String toString()
Converts the Long value to a String and assumes a radix of 10.

Returns: the String representation

valueOf

public static Long valueOf(String s, int radix)
Creates a new Long object using the String and specified radix (base).

Parameters: s the String to convert radix the radix (base) to convert with

Returns: the new Long

Throws: NumberFormatException if s cannot be parsed as a long

See Also: Long

valueOf

public static Long valueOf(String s)
Creates a new Long object using the String, assuming a radix of 10.

Parameters: s the String to convert

Returns: the new Long

Throws: NumberFormatException if s cannot be parsed as a long

See Also: Long parseLong

valueOf

public static Long valueOf(long val)
Returns a Long object wrapping the value.

Parameters: val the value to wrap

Returns: the Long

Since: 1.5