多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# Java 程序:字符串到`long`的转换 > 原文: [https://beginnersbook.com/2013/12/how-to-convert-string-to-long-in-java/](https://beginnersbook.com/2013/12/how-to-convert-string-to-long-in-java/) 在本教程中,我们将看到**如何在 Java** 中将`String`转换为`long`。将`String`转换为`long`值有三种方法。 ## 1\. 使用`Long.parseLong(String)`将`String`转换为`long` [`Long.parseLong(String)`](https://docs.oracle.com/javase/7/docs/api/java/lang/Long.html#parseLong(java.lang.String)):字符串中的所有字符必须是除第一个字符外的数字,可以是数字或减号`-`。例如 - 允许`long var = Long.parseInt("-123");` ,转换后的`var`值为 -123。 ### 使用`Long.parseLong(String)`将`String`转换为`long` 在此示例中,字符串`str2`在开头具有减号`'-'`,这就是变量`num2`的值为负的原因。 ```java public class JavaExample { public static void main(String[] args) { String str = "21111"; String str2 = "-11111"; //Conversion using parseLong(String) method long num = Long.parseLong(str); long num2 = Long.parseLong(str2); System.out.println(num+num2); } } ``` **输出:** ![Java String to Long conversion](https://img.kancloud.cn/cf/4b/cf4befdf8247e08cd1f6e45f05e74f48_778x610.jpg) ## 2\. 使用`Long.valueOf(String)`将`String`转换为`long` [`Long.valueOf(String)`](https://docs.oracle.com/javase/7/docs/api/java/lang/Long.html#valueOf(java.lang.String)):将`String`转换为`long`值。与`parseLong(String)`方法类似,此方法还允许减号`'-'`作为`String`中的第一个字符。 ### 使用`Long.valueOf(String)`将`String`转换为`long` ```java public class Example { public static void main(String[] args) { String str = "11111"; String str2 = "88888"; //Conversion using valueOf(String) method long num = Long.valueOf(str); long num2 = Long.valueOf(str2); System.out.println(num+num2); } } ``` 输出: ```java 99999 ``` ## 3\. 使用`Long`类的构造函数将`String`转换为`long` [`Long(String s)`构造函数](https://docs.oracle.com/javase/7/docs/api/java/lang/Long.html#Long(java.lang.String)):`Long`类有一个构造函数,它允许`String`参数并创建一个新的`Long`对象,表示等效`long`值中的指定字符串。该字符串将以`parseLong(String)`方法用于基数 10 的方式完全转换为`long`值。 ### 使用`new Long(String)`将`String`转换为`long` ```java public class Example { public static void main(String[] args) { String str = "10000"; String str2 = "22222"; //Conversion using Long(String s) constructor long num = new Long(str); long num2 = new Long(str2); System.out.println(num*num2); } } ``` 输出: ```java 222220000 ```