我正在尝试将字符串转换为int以查看结果,但我收到运行时错误。
String string="Java";
int see=Integer.parseInt("string");
并尝试使用此代码 -
String[] sstring={"Java"};
int ssee=Interger.parseInt("sstring[0]");
并尝试使用此代码 -
String[] sstring={"Java"};
int ssee=Interger.parseInt(sstring[0]);
我得到的按摩 -
Exception in thread "main" java.lang.NumberFormatException: For input string: "string"
at java.lang.NumberFormatException.forInputString(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at displayName.main(displayName.java:13)
答案 0 :(得分:1)
那是因为该字符串中没有整数。你必须将一个数字作为字符串传递给它才能工作,否则没有有效的值可以返回。
根据您的使用情况,可能完全可以捕获该异常并在这种情况下使用默认值。
答案 1 :(得分:1)
你需要给它一个包含整数的字符串:
String value="10";
int x=Integer.parseInt(value);
如果你没有传入有效的字符串,它会在尝试解析时抛出异常,这就是你所看到的。
答案 2 :(得分:0)
这是String#parseInt
应如何工作的示例
int see = Integer.parseInt("1234");
字符串需要表示一个数字。
也许您正在寻找String的ASCII值?
String s = "Java";
byte[] bytes = s.getBytes("US-ASCII");
答案 3 :(得分:0)
如果要查找整数对象而不是基本类型,可以使用返回的valueOf
Integer i = Integer.valueOf("1234")
如果您是Java新手,请尝试在此处阅读Difference between Integer and int.
答案 4 :(得分:0)
只能使用Integer.parseInt()
函数解析以String形式表示的数字。在其他情况下,抛出NumberFormatException
。
我会建议谷歌和维基百科这样的简单事情。它们是学习的重要来源,是解决简单疑虑的第一步。
希望这会有所帮助。