- java.lang.Object
-
- java.lang.Number
-
- java.lang.Long
-
- 实现的所有接口
-
Serializable
,Comparable<Long>
public final class Longextends Numberimplements Comparable<Long>
Long
类在对象中包装基本类型long
的值。Long
类型的对象包含单个字段,其类型为long
。此外,此类提供了几种将
long
转换为String
和String
转换为long
,以及处理long
时有用的其他常量和方法。实施注释:“bit twiddling”方法(如
highestOneBit
和numberOfTrailingZeros
)的实现基于Henry S. Warren,Jr。的Hacker's Delight (Addison Wesley,2002)的材料。- 从以下版本开始:
- 1.0
- 另请参见:
- Serialized Form
-
-
方法摘要
所有方法 静态方法 实例方法 具体的方法 变量和类型 方法 描述 static int
bitCount(long i)
返回指定的long
值的二进制补码表示形式中的long
。byte
byteValue()
返回此值Long
为byte
的基本收缩转换后。static int
compare(long x, long y)
以数字方式比较两个long
值。int
compareTo(Long anotherLong)
用数字比较两个Long
对象。static int
compareUnsigned(long x, long y)
比较两个long
值,以数值方式将值视为无符号。static Long
decode(String nm)
将String
解码为Long
。static long
divideUnsigned(long dividend, long divisor)
返回将第一个参数除以第二个参数的无符号商,其中每个参数和结果都被解释为无符号值。double
doubleValue()
返回此值Long
为double
一个宽元转换后。boolean
equals(Object obj)
将此对象与指定的对象进行比较。float
floatValue()
返回此值Long
为float
一个宽元转换后。static Long
getLong(String nm)
确定具有指定名称的系统属性的long
值。static Long
getLong(String nm, long val)
确定具有指定名称的系统属性的long
值。static Long
getLong(String nm, Long val)
返回具有指定名称的系统属性的long
值。int
hashCode()
返回此Long
的哈希码。static int
hashCode(long value)
返回long
值的哈希码; 与Long.hashCode()
兼容。static long
highestOneBit(long i)
返回long
值,最多只有一位,位于指定long
值中最高位(“最左侧”)的一位。int
intValue()
返回此的值Long
作为int
的基本收缩转换之后。long
longValue()
以long
值的形式返回此Long
的值。static long
lowestOneBit(long i)
返回long
值,最多只有一位,位于指定long
值中最低位(“最右侧”)的一位。static long
max(long a, long b)
static long
min(long a, long b)
static int
numberOfLeadingZeros(long i)
返回指定long
值的二进制补码二进制表示中最高位(“最左侧”)一位之前的零位数。static int
numberOfTrailingZeros(long i)
返回指定long
值的二进制补码表达式中最低位(“最右侧”)一位之后的零位数。static long
parseLong(CharSequence s, int beginIndex, int endIndex, int radix)
解析CharSequence
参数作为有符号long
指定radix
,在指定的开始beginIndex
并延伸到endIndex - 1
。static long
parseLong(String s)
将字符串参数解析为带符号的十进制long
。static long
parseLong(String s, int radix)
将字符串参数解析为第二个参数指定的基数中的带符号long
。static long
parseUnsignedLong(CharSequence s, int beginIndex, int endIndex, int radix)
解析CharSequence
参数为一个无符号long
在指定的radix
,在指定的开始beginIndex
并延伸到endIndex - 1
。static long
parseUnsignedLong(String s)
将字符串参数解析为无符号十进制long
。static long
parseUnsignedLong(String s, int radix)
将字符串参数解析为第二个参数指定的基数中的无符号long
。static long
remainderUnsigned(long dividend, long divisor)
返回将第一个参数除以第二个参数的无符号余数,其中每个参数和结果都被解释为无符号值。static long
reverse(long i)
返回通过反转指定的long
值的二进制补码表达式中的位顺序获得的值。static long
reverseBytes(long i)
返回通过反转指定的long
值的二进制补码表示中的字节顺序获得的值。static long
rotateLeft(long i, int distance)
返回通过旋转指定long
剩余的指定long
值的二进制补码表示形式获得的值。static long
rotateRight(long i, int distance)
返回通过将指定的long
值的二进制补码表达式旋转指定的long
值。short
shortValue()
在缩小基元转换后,将此Long
的值作为short
返回。static int
signum(long i)
返回指定的long
值的signum函数。static long
sum(long a, long b)
根据+运算符一起添加两个long
值。static String
toBinaryString(long i)
返回long
参数的字符串表示形式,作为base 2中的无符号整数。static String
toHexString(long i)
返回long
参数的字符串表示形式,作为基数为16的无符号整数。static String
toOctalString(long i)
返回long
参数的字符串表示形式,作为基数为8的无符号整数。String
toString()
返回表示此Long
值的String
对象。static String
toString(long i)
返回表示指定的long
的String
对象。static String
toString(long i, int radix)
返回第二个参数指定的基数中第一个参数的字符串表示形式。static String
toUnsignedString(long i)
以无符号十进制值的形式返回参数的字符串表示形式。static String
toUnsignedString(long i, int radix)
返回第一个参数的字符串表示形式,作为第二个参数指定的基数中的无符号整数值。static Long
valueOf(long l)
返回表示指定的long
值的Long
实例。static Long
valueOf(String s)
返回一个Long
物体保持在指定的值String
。static Long
valueOf(String s, int radix)
返回Long
对象,当使用第二个参数给出的基数进行解析时,该对象保存从指定的String
提取的值。
-
-
-
字段详细信息
-
BYTES
public static final int BYTES
用于表示二进制补码二进制形式的long
值的字节数。- 从以下版本开始:
- 1.8
- 另请参见:
- 常数字段值
-
-
构造方法详细信息
-
Long
@Deprecated(since="9")public Long(long value)
Deprecated.It is rarely appropriate to use this constructor. The static factoryvalueOf(long)
is generally a better choice, as it is likely to yield significantly better space and time performance.构造一个新分配的Long
对象,该对象表示指定的long
参数。- 参数
-
value
-Long
对象表示的值。
-
Long
@Deprecated(since="9")public Long(String s) throws NumberFormatException
Deprecated.It is rarely appropriate to use this constructor. UseparseLong(String)
to convert a string to along
primitive, or usevalueOf(String)
to convert a string to aLong
object.构造一个新分配Long
对象,表示long
由指示值String
参数。 该字符串parseLong
方法用于基数10的方式完全转换为long
值。- 参数
-
s
-String
转换为Long
。 - 异常
-
NumberFormatException
- 如果String
不包含可分析的long
。
-
-
方法详细信息
-
toString
public static String toString(long i, int radix)
返回第二个参数指定的基数中第一个参数的字符串表示形式。如果基数小于
Character.MIN_RADIX
或大于Character.MAX_RADIX
,则使用基数10
代替。如果第一个参数为负数,则结果的第一个元素是ASCII减号
'-'
('\u002d'
)。 如果第一个参数不是负数,则结果中不会出现符号字符。结果的剩余字符表示第一个参数的大小。 如果幅度为零,则由单个零字符
'0'
('\u0030'
)表示; 否则,幅度表示的第一个字符将不是零字符。 以下ASCII字符用作数字:0123456789abcdefghijklmnopqrstuvwxyz
'\u0030'
到'\u0039'
和'\u0061'
到'\u007a'
。 如果radix
是N ,则这些字符中的前N个按所示顺序用作基数-N数字。 因此,十六进制(基数16)的数字是0123456789abcdef
。 如果需要大写字母,可以在结果上调用String.toUpperCase()
方法:Long.toString(n, 16).toUpperCase()
- 参数
-
i
- 要转换为字符串的long
。 -
radix
- 字符串表示形式中使用的基数。 - 结果
- 指定基数中参数的字符串表示形式。
- 另请参见:
-
Character.MAX_RADIX
,Character.MIN_RADIX
-
toUnsignedString
public static String toUnsignedString(long i, int radix)
返回第一个参数的字符串表示形式,作为第二个参数指定的基数中的无符号整数值。如果基数小于
Character.MIN_RADIX
或大于Character.MAX_RADIX
,则使用基数10
代替。请注意,由于第一个参数被视为无符号值,因此不会打印前导符号字符。
如果幅度为零,则由单个零字符
'0'
('\u0030'
)表示; 否则,幅度表示的第一个字符将不是零字符。基数的行为和用作数字的字符与
toString
相同。- 参数
-
i
- 要转换为无符号字符串的整数。 -
radix
- 字符串表示中使用的基数。 - 结果
- 指定基数中参数的无符号字符串表示形式。
- 从以下版本开始:
- 1.8
- 另请参见:
-
toString(long, int)
-
toHexString
public static String toHexString(long i)
返回long
参数的字符串表示形式,作为基数为16的无符号整数。如果参数为负,
long
符号long
值为参数加2 64 ; 否则,它等于参数。 此值将转换为十六进制(基数为16)的ASCII数字字符串,没有额外的前导0
。可以通过调用
Long.parseUnsignedLong(s, 16)
从返回的字符串s
恢复参数的值。如果无符号幅度为零,则由单个零字符
'0'
('\u0030'
)表示; 否则,无符号幅度表示的第一个字符将不是零字符。 以下字符用作十六进制数字:0123456789abcdef
'\u0030'
至'\u0039'
和'\u0061'
至'\u0066'
。 如果需要大写字母,可以在结果上调用String.toUpperCase()
方法:Long.toHexString(n).toUpperCase()
- 参数
-
i
- 要转换为字符串的long
。 - 结果
- 由十六进制(基数为16)的参数表示的无符号
long
值的字符串表示形式。 - 从以下版本开始:
- 1.0.2
- 另请参见:
-
parseUnsignedLong(String, int)
,toUnsignedString(long, int)
-
toOctalString
public static String toOctalString(long i)
返回long
参数的字符串表示形式,作为基数为8的无符号整数。如果参数为负,
long
符号long
值为参数加2 64 ; 否则,它等于参数。 此值将转换为八进制(基数为8)的ASCII数字字符串,没有额外的前导0
。可以通过调用
Long.parseUnsignedLong(s, 8)
从返回的字符串s
恢复参数的值。如果无符号幅度为零,则由单个零字符
'0'
('\u0030'
)表示; 否则,无符号幅度表示的第一个字符将不是零字符。 以下字符用作八进制数字:01234567
'\u0030'
到'\u0037'
。- 参数
-
i
- 要转换为字符串的long
。 - 结果
- 由八进制(基数8)中的参数表示的无符号
long
值的字符串表示形式。 - 从以下版本开始:
- 1.0.2
- 另请参见:
-
parseUnsignedLong(String, int)
,toUnsignedString(long, int)
-
toBinaryString
public static String toBinaryString(long i)
以基数2中的无符号整数形式返回long
参数的字符串表示形式。如果参数为负,
long
符号long
值为参数加2 64 ; 否则,它等于参数。 此值将转换为二进制(基数2)中的ASCII数字字符串,没有额外的前导0
s。可以通过调用
Long.parseUnsignedLong(s, 2)
从返回的字符串s
恢复参数的值。如果无符号幅度为零,则由单个零字符
'0'
('\u0030'
)表示; 否则,无符号幅度表示的第一个字符将不是零字符。 字符'0'
('\u0030'
)和'1'
('\u0031'
)用作二进制数字。- 参数
-
i
- 要转换为字符串的long
。 - 结果
- 由二进制(基数2)中的参数表示的无符号
long
值的字符串表示形式。 - 从以下版本开始:
- 1.0.2
- 另请参见:
-
parseUnsignedLong(String, int)
,toUnsignedString(long, int)
-
toString
public static String toString(long i)
返回表示指定的long
的String
对象。 该参数将转换为带符号的十进制表示形式并作为字符串返回,就像参数和基数10作为toString(long, int)
方法的参数一样 。- 参数
-
i
- 待转换的long
。 - 结果
- 基数为10的参数的字符串表示。
-
toUnsignedString
public static String toUnsignedString(long i)
以无符号十进制值的形式返回参数的字符串表示形式。 参数将转换为无符号十进制表示形式,并作为字符串返回,就像参数和基数10作为toUnsignedString(long, int)
方法的参数一样 。- 参数
-
i
- 要转换为无符号字符串的整数。 - 结果
- 参数的无符号字符串表示形式。
- 从以下版本开始:
- 1.8
- 另请参见:
-
toUnsignedString(long, int)
-
parseLong
public static long parseLong(String s, int radix) throws NumberFormatException
将字符串参数解析为第二个参数指定的基数中的带符号long
。 字符串中的字符必须全部是指定基数的数字(由Character.digit(char, int)
是否返回非负值确定),除了第一个字符可能是ASCII减号'-'
('\u002D'
)以指示负值或ASCII加号'+'
('\u002B'
)表示正值。 返回结果long
值。请注意,字符
L
('\u004C'
)和l
('\u006C'
)都不允许作为类型指示符出现在字符串的末尾,这在Java编程语言源代码中是允许的 - 除了L
或l
可能显示为基数大于或等于22的数字。如果发生以下任何一种情况,则抛出类型
NumberFormatException
的异常:- 第一个参数是
null
或者是长度为零的字符串。 -
radix
小于Character.MIN_RADIX
或大于Character.MAX_RADIX
。 - 字符串的任何字符都不是指定基数的数字,除了第一个字符可以是减号
'-'
('\u002d'
)或加号'+'
('\u002B'
),前提是字符串长度超过长度1。 - 字符串表示的值不是
long
类型的值。
例子:
parseLong("0", 10) returns 0L parseLong("473", 10) returns 473L parseLong("+42", 10) returns 42L parseLong("-0", 10) returns 0L parseLong("-FF", 16) returns -255L parseLong("1100110", 2) returns 102L parseLong("99", 8) throws a NumberFormatException parseLong("Hazelnut", 10) throws a NumberFormatException parseLong("Hazelnut", 36) returns 1356099454469L
- 参数
-
s
-所述String
含有long
表示来进行解析。 -
radix
- 解析s
使用的基数。 - 结果
-
long
由指定基数中的字符串参数表示。 - 异常
-
NumberFormatException
- 如果字符串不包含可解析的long
。
- 第一个参数是
-
parseLong
public static long parseLong(CharSequence s, int beginIndex, int endIndex, int radix) throws NumberFormatException
解析CharSequence
参数作为有符号long
指定radix
,在指定的开始beginIndex
并延伸到endIndex - 1
。该方法不采取措施来防止
CharSequence
在解析时发生突变。- 参数
-
s
-CharSequence
包含要解析的long
表示 -
beginIndex
- 起始索引,包括在内。 -
endIndex
- 结束索引,独占。 -
radix
- 解析s
使用的基数。 - 结果
- 签名的
long
由指定基数中的子long
表示。 - 异常
-
NullPointerException
- 如果s
为空。 -
IndexOutOfBoundsException
- 如果beginIndex
为负数,或者beginIndex
大于endIndex
或endIndex
大于s.length()
。 -
NumberFormatException
- 如果int
在指定的CharSequence
中不包含可解析的radix
,或者radix
小于Character.MIN_RADIX
或大于Character.MAX_RADIX
。 - 从以下版本开始:
- 9
-
parseLong
public static long parseLong(String s) throws NumberFormatException
将字符串参数解析为带符号的十进制long
。 字符串中的字符必须全部为十进制数字,除了第一个字符可以是ASCII减号'-'
(\u002D'
)以指示负值或ASCII加号'+'
('\u002B'
)以指示正值。 返回得到的long
值,就像参数和基数10
作为parseLong(java.lang.String, int)
方法的参数一样 。请注意,字符
L
('\u004C'
)和l
('\u006C'
)都不允许作为类型指示符出现在字符串的末尾,这在Java编程语言源代码中是允许的。- 参数
-
s
-一个String
含有long
表示被解析 - 结果
-
long
由十进制参数表示。 - 异常
-
NumberFormatException
- 如果字符串不包含可解析的long
。
-
parseUnsignedLong
public static long parseUnsignedLong(String s, int radix) throws NumberFormatException
将字符串参数解析为第二个参数指定的基数中的无符号long
。 无符号整数将通常与负数关联的值映射到大于MAX_VALUE
正数。 字符串中的字符必须都是指定基数的数字(由Character.digit(char, int)
是否返回非负值确定),但第一个字符可能是ASCII加号'+'
('\u002B'
)。 返回结果整数值。如果发生以下任何一种情况,则抛出类型
NumberFormatException
的异常:- 第一个参数是
null
或者是长度为零的字符串。 - 基数小于
Character.MIN_RADIX
或大于Character.MAX_RADIX
。 - 字符串的任何字符都不是指定基数的数字,除了第一个字符可能是加号
'+'
('\u002B'
),前提是字符串长度超过长度1。 - 字符串表示的值大于最大的无符号
long
64 -1。
- 参数
-
s
- 包含要解析的无符号整数表示的String
-
radix
- 解析s
使用的基数。 - 结果
- 无符号的
long
由指定基数中的字符串参数表示。 - 异常
-
NumberFormatException
- 如果String
不包含可解析的long
。 - 从以下版本开始:
- 1.8
- 第一个参数是
-
parseUnsignedLong
public static long parseUnsignedLong(CharSequence s, int beginIndex, int endIndex, int radix) throws NumberFormatException
解析CharSequence
参数为一个无符号long
在指定的radix
,在指定的开始beginIndex
并延伸到endIndex - 1
。该方法不会采取措施来防止
CharSequence
在解析时发生变异。- 参数
-
s
-所述CharSequence
含有无符号long
表示被解析 -
beginIndex
- 起始索引,包括在内。 -
endIndex
- 结束索引,独占。 -
radix
- 解析s
使用的基数。 - 结果
- 未
long
由指定基数中的子long
表示。 - 异常
-
NullPointerException
- 如果s
为空。 -
IndexOutOfBoundsException
- 如果beginIndex
为负数,或者beginIndex
大于endIndex
或者endIndex
大于s.length()
。 -
NumberFormatException
- 如果long
在指定的CharSequence
中不包含可解析的无符号radix
,或者radix
小于Character.MIN_RADIX
或大于Character.MAX_RADIX
。 - 从以下版本开始:
- 9
-
parseUnsignedLong
public static long parseUnsignedLong(String s) throws NumberFormatException
将字符串参数解析为无符号十进制long
。 字符串中的字符必须全部为十进制数字,但第一个字符可以是ASCII加号'+'
('\u002B'
)。 返回结果整数值,就像参数和基数10作为parseUnsignedLong(java.lang.String, int)
方法的参数一样 。- 参数
-
s
-一个String
含有无符号long
表示被解析 - 结果
- 由十进制字符串参数表示的无符号
long
值 - 异常
-
NumberFormatException
- 如果字符串不包含可解析的无符号整数。 - 从以下版本开始:
- 1.8
-
valueOf
public static Long valueOf(String s, int radix) throws NumberFormatException
返回Long
对象,当使用第二个参数给出的基数进行解析时,该对象保存从指定的String
提取的值。 第一个参数被解释为表示由第二个参数指定的基数中的带符号long
,就像将参数赋予parseLong(java.lang.String, int)
方法一样。 结果是Long
对象,表示由字符串指定的long
值。换句话说,此方法返回
Long
对象,其值等于:new Long(Long.parseLong(s, radix))
- 参数
-
s
- 要解析的字符串 -
radix
- 用于解释s
的基数 - 结果
-
Long
对象,保存指定基数中字符串参数表示的值。 - 异常
-
NumberFormatException
- 如果String
不包含可分析的long
。
-
valueOf
public static Long valueOf(String s) throws NumberFormatException
返回一个Long
物体保持在指定的值String
。 该参数被解释为表示带符号的十进制long
,就像该参数被赋予parseLong(java.lang.String)
方法一样。 结果是Long
对象,表示字符串指定的整数值。换句话说,此方法返回
Long
对象,其值等于:new Long(Long.parseLong(s))
- 参数
-
s
- 要解析的字符串。 - 结果
- 包含字符串参数表示的值的
Long
对象。 - 异常
-
NumberFormatException
- 如果字符串无法解析为long
。
-
valueOf
public static Long valueOf(long l)
返回表示指定的long
值的Long
实例。 如果不需要新的Long
实例,则通常应优先使用此方法而不是构造函数Long(long)
,因为此方法可能通过缓存频繁请求的值来显着提高空间和时间性能。 此方法将始终缓存-128到127(包括端点)范围内的值,并可以缓存此范围之外的其他值。- 参数
-
l
- 一个很长的价值。 - 结果
-
Long
实例,代表l
。 - 从以下版本开始:
- 1.5
-
decode
public static Long decode(String nm) throws NumberFormatException
将String
解码为Long
。 接受以下语法给出的十进制,十六进制和八进制数:- DecodableString:
- Signopt DecimalNumeral
- Signopt
0x
HexDigits - Signopt
0X
HexDigits - Signopt
#
HexDigits - Signopt
0
OctalDigits - Sign:
-
-
-
+
可选符号和/或基数说明符(“
0x
”,“0X
”,“#
”或前导零)后面的字符序列由Long.parseLong
方法使用指示的基数(10,16或8)进行解析。 此字符序列必须表示正值或将抛出NumberFormatException
。 如果指定的String
第一个字符是减号,则结果为否定。String
中不允许使用空格字符。- 参数
-
nm
- 要解码的String
。 - 结果
-
Long
持有long
值的对象,由nm
表示 - 异常
-
NumberFormatException
- 如果String
不包含可分析的long
。 - 从以下版本开始:
- 1.2
- 另请参见:
-
parseLong(String, int)
-
byteValue
public byte byteValue()
返回此值Long
为byte
的基本收缩转换后。
-
shortValue
public short shortValue()
在缩小基元转换后,将此Long
的值作为short
返回。- 重写:
-
shortValue
类别Number
- 结果
- 转换为类型
short
后此对象表示的数值。 - See The Java™ Language Specification:
- 5.1.3缩小原始转换
-
intValue
public int intValue()
返回此的值Long
作为int
的基本收缩转换之后。
-
longValue
public long longValue()
以long
值的形式返回此Long
的值。
-
floatValue
public float floatValue()
返回此值Long
为float
一个宽元转换后。- Specified by:
-
floatValue
类Number
- 结果
- 转换为类型
float
后此对象表示的数值。 - See The Java™ Language Specification:
- 5.1.2拓宽原始转换
-
doubleValue
public double doubleValue()
返回此值Long
为double
一个宽元转换后。- Specified by:
-
doubleValue
类Number
- 结果
- 转换为类型
double
后此对象表示的数值。 - See The Java™ Language Specification:
- 5.1.2拓宽原始转换
-
toString
public String toString()
返回表示此Long
值的String
对象。 该值将转换为带符号的十进制表示形式并以字符串形式返回,就像long
值作为toString(long)
方法的参数一样 。
-
hashCode
public int hashCode()
返回此Long
的哈希码。 结果是此Long
对象保持的原始值long
值的两半的异或。 也就是说,哈希码是表达式的值:(int)(this.longValue()^(this.longValue()>>>32))
- 重写:
-
hashCode
类Object
- 结果
- 此对象的哈希码值。
- 另请参见:
-
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
hashCode
public static int hashCode(long value)
返回long
值的哈希码; 与Long.hashCode()
兼容。- 参数
-
value
- 哈希值 - 结果
-
long
值的哈希码值。 - 从以下版本开始:
- 1.8
-
equals
public boolean equals(Object obj)
将此对象与指定的对象进行比较。 结果为true
当且仅当参数不是null
并且是Long
对象时,该对象包含与此对象相同的long
值。- 重写:
-
equals
类Object
- 参数
-
obj
- 要与之比较的对象。 - 结果
-
true
如果对象相同; 否则为false
。 - 另请参见:
-
Object.hashCode()
,HashMap
-
getLong
public static Long getLong(String nm)
确定具有指定名称的系统属性的long
值。第一个参数被视为系统属性的名称。 可以通过
System.getProperty(java.lang.String)
方法访问系统属性。 然后此属性的字符串值被解释为long
使用由支持的语法值decode
和Long
返回表示此值对象。如果没有具有指定名称的属性,如果指定的名称为空或
null
,或者属性没有正确的数字格式,则返回null
。换句话说,此方法返回
Long
对象,其值等于:getLong(nm, null)
- 参数
-
nm
- 房产名称。 - 结果
- 属性的
Long
值。 - 异常
-
SecurityException
- 原因与System.getProperty
相同 - 另请参见:
-
System.getProperty(java.lang.String)
,System.getProperty(java.lang.String, java.lang.String)
-
getLong
public static Long getLong(String nm, long val)
确定具有指定名称的系统属性的long
值。第一个参数被视为系统属性的名称。 可以通过
System.getProperty(java.lang.String)
方法访问系统属性。 然后此属性的字符串值被解释为long
使用由支持的语法值decode
和Long
返回表示此值对象。第二个参数是默认值。 如果没有指定名称的属性,属性没有正确的数字格式,或者指定的名称为空或null,则返回表示第二个参数值的
Long
对象。换句话说,此方法返回
Long
对象,其值等于:getLong(nm, new Long(val))
Long result = getLong(nm, null); return (result == null) ? new Long(val) : result;
Long
对象。- 参数
-
nm
- 房产名称。 -
val
- 默认值。 - 结果
- 该
Long
价值Long
。 - 异常
-
SecurityException
- 原因与System.getProperty
相同 - 另请参见:
-
System.getProperty(java.lang.String)
,System.getProperty(java.lang.String, java.lang.String)
-
getLong
public static Long getLong(String nm, Long val)
返回具有指定名称的系统属性的long
值。 第一个参数被视为系统属性的名称。 可以通过System.getProperty(java.lang.String)
方法访问系统属性。 然后,根据decode
方法将此属性的字符串值解释为long
值,并返回表示此值的Long
对象; 综上所述:- 如果属性值以两个ASCII字符
0x
或ASCII字符#
,后面没有减号,则其余部分将被解析为十六进制整数,与方法valueOf(java.lang.String, int)
(带基数16)完全相同。 - 如果属性值以ASCII字符
0
开头,后跟另一个字符,则将其解析为八进制整数,与方法valueOf(java.lang.String, int)
(基数为8)完全相同。 - 否则,属性值将被解析为十进制整数,与方法
valueOf(java.lang.String, int)
(基数为10)完全相同。
请注意,在每种情况下,
L
('\u004C'
)和l
('\u006C'
)都不允许作为类型指示符出现在属性值的末尾,这在Java编程语言源代码中是允许的。第二个参数是默认值。 如果没有指定名称的属性,属性没有正确的数字格式,或者指定的名称为空或
null
,则返回默认值。- 参数
-
nm
- 房产名称。 -
val
- 默认值。 - 结果
-
Long
物业的价值。 - 异常
-
SecurityException
- 原因与System.getProperty
相同 - 另请参见:
-
System.getProperty(java.lang.String)
,System.getProperty(java.lang.String, java.lang.String)
- 如果属性值以两个ASCII字符
-
compareTo
public int compareTo(Long anotherLong)
以数字方式比较两个Long
对象。- Specified by:
-
compareTo
,界面Comparable<Long>
- 参数
-
anotherLong
- 待比较的Long
。 - 结果
- 值
0
如果此Long
是等于参数Long
; 的值小于0
,如果这Long
在数值上小于该参数Long
; 如果此Long
在数值上大于参数Long
(带符号的比较),则值大于0
。 - 从以下版本开始:
- 1.2
-
compare
public static int compare(long x, long y)
以数字方式比较两个long
值。 返回的值与返回的值相同:Long.valueOf(x).compareTo(Long.valueOf(y))
- 参数
-
x
- 第一个long
来比较 -
y
- 第二个long
进行比较 - 结果
- 值
0
如果x == y
; 小于0
的值,如果x < y
; 和值大于0
如果x > y
- 从以下版本开始:
- 1.7
-
compareUnsigned
public static int compareUnsigned(long x, long y)
比较两个long
值,以数值方式将值视为无符号。- 参数
-
x
- 第一个long
来比较 -
y
- 第二个long
进行比较 - 结果
- 值
0
如果x == y
; 如果x < y
为无符号值,则小于0
值; 如果x > y
为无符号值,则值大于0
- 从以下版本开始:
- 1.8
-
divideUnsigned
public static long divideUnsigned(long dividend, long divisor)
返回将第一个参数除以第二个参数的无符号商,其中每个参数和结果都被解释为无符号值。注意,在二进制补码算法中,如果两个操作数被认为是有符号的或两者都是无符号的,则加,减和乘法的其他三个基本算术运算是逐位相同的。 因此,未提供单独的
addUnsigned
等方法。- 参数
-
dividend
- 要划分的值 -
divisor
- 进行分割的价值 - 结果
- 第一个参数的无符号商除以第二个参数
- 从以下版本开始:
- 1.8
- 另请参见:
-
remainderUnsigned(long, long)
-
remainderUnsigned
public static long remainderUnsigned(long dividend, long divisor)
返回将第一个参数除以第二个参数的无符号余数,其中每个参数和结果都被解释为无符号值。- 参数
-
dividend
- 要划分的值 -
divisor
- 进行分割的价值 - 结果
- 第一个参数的无符号余数除以第二个参数
- 从以下版本开始:
- 1.8
- 另请参见:
-
divideUnsigned(long, long)
-
highestOneBit
public static long highestOneBit(long i)
返回long
值,最多只有一位,位于指定long
值中最高位(“最左侧”)一位的位置。 如果指定的值在其二进制补码表示中没有一位,即,如果它等于零,则返回零。- 参数
-
i
- 要计算其最高一位的值 - 结果
-
long
值,单个一位,在指定值的最高位一位的位置,如果指定值本身等于零,则为零。 - 从以下版本开始:
- 1.5
-
lowestOneBit
public static long lowestOneBit(long i)
返回long
值,最多只有一位,位于指定long
值中最低位(“最右侧”)一位的位置。 如果指定的值在其二进制补码表示中没有一位,即,如果它等于零,则返回零。- 参数
-
i
- 要计算其最低一位的值 - 结果
-
long
具有单个一位的值,位于指定值中最低位一位的位置,如果指定值本身等于零,则为零。 - 从以下版本开始:
- 1.5
-
numberOfLeadingZeros
public static int numberOfLeadingZeros(long i)
返回指定long
值的二进制补码表达式中最高位(“最左侧”)一位之前的零位数。 如果指定的值在其二进制补码表示中没有一位,则返回64,换句话说,如果它等于零。请注意,此方法与对数基数2密切相关。对于所有正数
long
值x:- 楼(log 2 (x))=
63 - numberOfLeadingZeros(x)
- ceil(log 2 (x))=
64 - numberOfLeadingZeros(x - 1)
- 参数
-
i
- 要计算其前导零数的值 - 结果
- 在指定的
long
值的二进制补码表达式中,最高位(“最左侧”)一位之前的零位数,如果该值等于零,则为64位。 - 从以下版本开始:
- 1.5
- 楼(log 2 (x))=
-
numberOfTrailingZeros
public static int numberOfTrailingZeros(long i)
返回指定long
值的二进制补码表达式中最低位(“最右侧”)一位后的零位数。 如果指定的值在其二进制补码表示中没有一位,则返回64,换句话说,如果它等于零。- 参数
-
i
- 要计算其尾随零数的值 - 结果
- 在指定的
long
值的二进制补码二进制表示中的最低位(“最右侧”)一位之后的零位数,如果该值等于零,则为64位。 - 从以下版本开始:
- 1.5
-
bitCount
public static int bitCount(long i)
返回指定的long
值的二进制补码表示形式中的long
。 此功能有时称为人口计数 。- 参数
-
i
- 要对其位进行计数的值 - 结果
- 指定的
long
值的二进制补码二进制表示中的long
。 - 从以下版本开始:
- 1.5
-
rotateLeft
public static long rotateLeft(long i, int distance)
返回通过旋转指定long
剩余的指定long
值的二进制补码表达式获得的值。 (位移出左侧,或高位,侧重新输入右侧,或低位。)请注意,具有负距离的左旋转等效于右旋转:
rotateLeft(val, -distance) == rotateRight(val, distance)
。 另请注意,按任意倍数64旋转是无操作,因此即使距离为负,也可以忽略旋转距离的最后六位以外的所有位:rotateLeft(val, distance) == rotateLeft(val, distance & 0x3F)
。- 参数
-
i
- 其位将向左旋转的值 -
distance
- 向左旋转的位位置数 - 结果
- 通过旋转指定
long
剩余的指定long
值的二进制补码表达式获得的值。 - 从以下版本开始:
- 1.5
-
rotateRight
public static long rotateRight(long i, int distance)
返回通过将指定的long
值的二进制补码表示法旋转指定的long
值。 (位移出右手,或低位,侧面重新进入左侧,或高位。)请注意,具有负距离的右旋转等效于左旋转:
rotateRight(val, -distance) == rotateLeft(val, distance)
。 另请注意,按64的任意倍数旋转都是无操作,因此即使距离为负,也可以忽略旋转距离的最后六位以外的所有位:rotateRight(val, distance) == rotateRight(val, distance & 0x3F)
。- 参数
-
i
- 其位将向右旋转的值 -
distance
- 向右旋转的位位置数 - 结果
- 通过将指定的
long
值的二进制补码二进制表示旋转指定的long
值。 - 从以下版本开始:
- 1.5
-
reverse
public static long reverse(long i)
返回通过反转指定的long
值的二进制补码表达式中的位顺序获得的值。- 参数
-
i
- 要反转的值 - 结果
- 通过反转指定的
long
值中的位顺序获得的值。 - 从以下版本开始:
- 1.5
-
signum
public static int signum(long i)
返回指定的long
值的signum函数。 (如果指定的值为负,则返回值为-1;如果指定的值为零,则返回0;如果指定的值为正,则返回1。)- 参数
-
i
- 要计算其signum的值 - 结果
- 指定的
long
值的signum函数。 - 从以下版本开始:
- 1.5
-
reverseBytes
public static long reverseBytes(long i)
返回通过反转指定的long
值的二进制补码表示中的字节顺序获得的值。- 参数
-
i
- 要反转其字节的值 - 结果
- 通过反转指定的
long
值中的字节获得的值。 - 从以下版本开始:
- 1.5
-
sum
public static long sum(long a, long b)
根据+运算符将两个long
值相加。- 参数
-
a
- 第一个操作数 -
b
- 第二个操作数 - 结果
- 总和
a
和b
- 从以下版本开始:
- 1.8
- 另请参见:
-
BinaryOperator
-
max
public static long max(long a, long b)
- 参数
-
a
- 第一个操作数 -
b
- 第二个操作数 - 结果
-
a
和b
的较大者 - 从以下版本开始:
- 1.8
- 另请参见:
-
BinaryOperator
-
min
public static long min(long a, long b)
- 参数
-
a
- 第一个操作数 -
b
- 第二个操作数 - 结果
- 较小的
a
和b
- 从以下版本开始:
- 1.8
- 另请参见:
-
BinaryOperator
-
-