Java long 转换为 String
今天我们将学习在Java中将long型转换为字符串的不同方法。Java中可以有多种转换long型到字符串的方式,我们将逐个进行演示并提供示例代码片段。
将Java的Long类型转换为字符串

-
- 使用+运算符
-
- 这是将long转换为字符串的最简单方法。
-
- long l = 123L;
-
- String str = l+””; // str 是 ‘123’
Long.toString()
我们可以使用Long类的toString方法来获得long的十进制表示的字符串。下面的代码片段展示了如何将long转换为字符串。
long l = 12345L;
String str = Long.toString(l);
System.out.println(str); //输出为 ‘12345’
我们还可以以其他格式编写long,比如八进制和十六进制,让我们看看在这些情况下将long转换为字符串会发生什么。
long l = 0x11L;
String str = Long.toString(l);
System.out.println(str); //输出为 ’17’
l = 011L;
str = Long.toString(l);
System.out.println(str); //输出为 ‘9’
因此,字符串始终以十进制格式返回。让我们看看其他将long转换为字符串的方法。
String.valueOf()
long l = 12345L;
String str = String.valueOf(l); // str 是 ‘12345’
new Long(long l)
Long构造函数的long参数在Java 9中已弃用,但您应该知道它。
long l = 12345L;
//从Java 9开始弃用,为了更好的性能,请使用valueOf
String str = new Long(l).toString(); // str 是 ‘12345’
String.format()
long l = 369L;
String s = String.format(“%d”, l);
DecimalFormat
long l = 12345L;
String str = DecimalFormat.getNumberInstance().format(l);
System.out.println(str); //str 是 ‘12,345’
//如果不想格式化
str = new DecimalFormat(“#”).format(l);
System.out.println(str); //str 是 ‘12345’
StringBuilder, StringBuffer
我们可以使用StringBuilder和StringBuffer的append函数将long转换为字符串。
long l = 12345L;
String str = new StringBuilder().append(l).toString();
Java的Long类型转换为String的示例
以下是一个简单的程序,在这个程序中,我们将把长整型转换为字符串,并使用前面所看到的所有不同方法进行打印。
package com.Olivia.string;
import java.text.DecimalFormat;
public class JavaLongToString {
@SuppressWarnings("deprecation")
public static void main(String[] args) {
long l = 12345L;
String str = Long.toString(l);
System.out.println(str);
str = String.valueOf(l);
System.out.println(str);
// deprecated from Java 9, use valueOf for better performance
str = new Long(l).toString();
System.out.println(str);
str = String.format("%d", l);
System.out.println(str);
str = l + "";
System.out.println(str);
str = DecimalFormat.getNumberInstance().format(l);
System.out.println(str);
str = new DecimalFormat("#").format(l);
System.out.println(str);
str = new StringBuilder().append(l).toString();
System.out.println(str);
}
}
将上述程序中的长整型的值更改为八进制或十六进制格式,您会注意到字符串表示始终为十进制格式。
将长整型转换为指定进制的字符串。
如果我们想将长整型转换为不同基数的字符串,而不是默认的十进制小数点,我们可以使用Long类的方法来进行这些转换。下面的代码片段显示了如何以八进制、十六进制甚至自定义基数的格式获取长整型变量的字符串表示。
long number = 45;
System.out.println(Long.toBinaryString(number)); //101101
System.out.println(Long.toOctalString(number)); //55
System.out.println(Long.toHexString(number)); //2d
System.out.println(Long.toString(number, 5)); //140
这就是将长整型转换为字符串的java程序的全部内容。参考资料:Long API文档。