Prev Class | Next Class | Frames | No Frames |

Summary: Nested | Field | Method | Constr | Detail: Nested | Field | Method | Constr |

`java.lang.Object`

`java.lang.Number`

`java.lang.Long`

**Implemented Interfaces:**- Comparable<T>, Serializable

Instances of class

`Long`

represent primitive
`long`

values.
Additionally, this class provides various helper functions and variables
related to longs.
**Since:**- 1.0

**See Also:**- Serialized Form

## Field Summary

`static long`

`MAX_VALUE`

- The maximum value a
`long`

can represent is 9223372036854775807 (or 2^{63}- 1).

`static long`

`MIN_VALUE`

- The minimum value a
`long`

can represent is -9223372036854775808L (or -2^{63}).

`static int`

`SIZE`

- The number of bits needed to represent a
`long`

.

`static Class`

`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.

## Method Summary

`static int`

`bitCount(long x)`

- Return the number of bits set in x.

`byte`

`byteValue()`

- Return the value of this
`Long`

as a`byte`

.

`static int`

`compare(long x, long y)`

- Compares two unboxed long values.

`int`

`static Long`

`double`

`doubleValue()`

- Return the value of this
`Long`

as a`double`

.

`boolean`

`float`

`floatValue()`

- Return the value of this
`Long`

as a`float`

.

`static Long`

`static Long`

`static Long`

`int`

`hashCode()`

- Return a hashcode representing this Object.

`static long`

`highestOneBit(long value)`

- Find the highest set bit in value, and return a new value with only that bit set.

`int`

`intValue()`

- Return the value of this
`Long`

as an`int`

.

`long`

`longValue()`

- Return the value of this
`Long`

.

`static long`

`lowestOneBit(long value)`

- Find the lowest set bit in value, and return a new value with only that bit set.

`static int`

`numberOfLeadingZeros(long value)`

- Return the number of leading zeros in value.

`static int`

`numberOfTrailingZeros(long value)`

- Find the number of trailing zeros in value.

`static long`

`static long`

`static long`

`reverse(long val)`

- Reverse the bits in val.

`static long`

`reverseBytes(long val)`

- Reverse the bytes in val.

`static long`

`rotateLeft(long x, int distance)`

- Rotate x to the left by distance bits.

`static long`

`rotateRight(long x, int distance)`

- Rotate x to the right by distance bits.

`short`

`shortValue()`

- Return the value of this
`Long`

as a`short`

.

`static int`

`signum(long x)`

- Return 1 if x is positive, -1 if it is negative, and 0 if it is zero.

`static String`

`toBinaryString(long l)`

- Converts the
`long`

to a`String`

assuming it is unsigned in base 2.

`static String`

`toHexString(long l)`

- Converts the
`long`

to a`String`

assuming it is unsigned in base 16.

`static String`

`toOctalString(long l)`

- Converts the
`long`

to a`String`

assuming it is unsigned in base 8.

`String`

`toString()`

- Converts the
`Long`

value to a`String`

and assumes a radix of 10.

`static String`

`toString(long num)`

- Converts the
`long`

to a`String`

and assumes a radix of 10.

`static String`

`toString(long num, int radix)`

- Converts the
`long`

to a`String`

using the specified radix (base).

`static Long`

`static Long`

`static Long`

`valueOf(long val)`

- Returns a
`Long`

object wrapping the value.

### Methods inherited from class java.lang.Number

`byteValue`

,`doubleValue`

,`floatValue`

,`intValue`

,`longValue`

,`shortValue`

### Methods inherited from class java.lang.Object

`clone`

,`equals`

,`extends Object> getClass`

,`finalize`

,`hashCode`

,`notify`

,`notifyAll`

,`toString`

,`wait`

,`wait`

,`wait`

public static final long MAX_VALUE

The maximum value a`long`

can represent is 9223372036854775807 (or 2^{63}- 1).

Field Value:- 9223372036854775807L

public static final long MIN_VALUE

The minimum value a`long`

can represent is -9223372036854775808L (or -2^{63}).

Field Value:- -9223372036854775808L

public static final int SIZE

The number of bits needed to represent a`long`

.

Field Value:- 64

Since:- 1.5

public static final ClassTYPE

The primitive type`long`

is represented by this`Class`

object.

Since:- 1.1

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(String)`

public static int bitCount(long x)

Return the number of bits set in x.

Parameters:`x`

- value to examine

Since:- 1.5

public static int compare(long x, long y)

Compares two unboxed 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:`x`

- First value to compare.`y`

- Second value to compare.

Returns:- positive int if the first value is greater, negative if the second is greater, and 0 if the two are equal.

Since:- 1.7

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

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:

Finally, the value must be in the rangeDecodableString: ( [`-`

]DecimalNumber) | ( [`-`

] (`0x`

|`0X`

|`#`

)HexDigit{HexDigit} ) | ( [`-`

]`0`

{OctalDigit} )DecimalNumber:DecimalDigit except '0'{DecimalDigit}DecimalDigit:Character.digit(d, 10) has value 0 to 9OctalDigit:Character.digit(d, 8) has value 0 to 7DecimalDigit:Character.digit(d, 16) has value 0 to 15`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

public double doubleValue()

Return the value of this`Long`

as a`double`

.

Overrides:- doubleValue in interface Number

Returns:- the double value

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

public float floatValue()

Return the value of this`Long`

as a`float`

.

Overrides:- floatValue in interface Number

Returns:- the float value

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:`System.getProperty(String)`

,`decode(String)`

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:`System.getProperty(String)`

,`decode(String)`

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:`System.getProperty(String)`

,`decode(String)`

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

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

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

public static int numberOfLeadingZeros(long value)

Return the number of leading zeros in value.

Parameters:`value`

- the value to examine

Since:- 1.5

public static int numberOfTrailingZeros(long value)

Find the number of trailing zeros in value.

Parameters:`value`

- the value to examine

Since:- 1.5

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:`parseLong(String,int)`

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`

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

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

public short shortValue()

Return the value of this`Long`

as a`short`

.

Overrides:- shortValue in interface Number

Returns:- the short value

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

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

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

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

public String toString()

Converts the`Long`

value to a`String`

and assumes a radix of 10.

Returns:- the
`String`

representation

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:`toString(long,int)`

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

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(String)`

,`parseLong(String)`

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:`parseLong(String,int)`

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

Long.java -- object wrapper for long
Copyright (C) 1998, 1999, 2001, 2002, 2004, 2005 Free Software Foundation, Inc.
This file is part of GNU Classpath.
GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Classpath is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301 USA.
Linking this library statically or dynamically with other modules is
making a combined work based on this library. Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.
As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent
modules, and to copy and distribute the resulting executable under
terms of your choice, provided that you also meet, for each linked
independent module, the terms and conditions of the license of that
module. An independent module is a module which is not derived from
or based on this library. If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so. If you do not wish to do so, delete this
exception statement from your version.