Java字符串转换为长整型

时间:2020-02-23 14:34:33  来源:igfitidea点击:

Java String到long的转换可以通过多种方法完成。
今天,我们将研究将Java字符串转换为长原始数据类型或者Long对象的一些常用方法。
请注意,由于Java支持自动装箱,因此long原始类型和Long对象可以互换使用而没有任何问题。

Java字符串转换为长整型

让我们看看在Java中将字符串转换为long的所有不同方法。

  • Long.parseLong()我们可以使用parseLong()方法将String解析为long。
    请注意,字符串结尾不应包含" L"作为类型指示符,否则它将引发"NumberFormatException"。
    但是字符串可以以"-"开头表示负数或者以" +"开头表示正数。
    此方法返回长原始类型。
    下面的代码片段显示了如何使用Long.parseLong()方法将字符串转换为long。

  • Long.valueOf()此方法的工作原理与parseLong()方法几乎相同,不同之处在于它返回Long对象。
    让我们看看如何使用此方法将String转换为Long对象。

  • new Long(String s)我们也可以通过其构造函数将String转换为Long对象。
    同样,如果我们想要长基本类型,则可以在其上使用longValue()方法。
    请注意,此构造函数已在Java 9中弃用,首选方法是使用parseLong()或者valueOf()方法。

  • DecimalFormat parse()这对于将格式化的字符串解析为long很有用。
    例如,如果String为" 1,11,111",则可以使用DecimalFormat将此字符串解析为以下形式的长度:
    请注意,parse()方法返回Number的实例,因此我们正在调用longValue()来从中获取长整型类型。

用基数将字符串转换为Long

有时数字不是用十进制格式写的,它们可以是二进制,八进制或者十六进制格式。
有一些方法可以通过传递基数值来将非十进制基数字符串转换为long。
下面的代码片段显示了如何将字符串转换为二进制,八进制和十六进制字符串表示形式的long值。

String str = "-12345";
long l = Long.parseLong(str); //returns long primitive