当前我得到java.lang.NumberFormatException:错误。我无法修复它。解决java.lang.NumberFormatException:错误
这里是我当前的代码:
import java.util.*;
import java.lang.*;
/**
* Write a description of class Square here.
*
* @author (your name)
* @version (a version number or a date)
*/
public class Square {
public static void main(String[] args) {
Scanner firstInput = new Scanner(System.in);
Scanner secondInput = new Scanner(System.in);
String n = firstInput.next();
n = n.replaceAll("[*0-9]","");
int b = Integer.parseInt(n);
int[] squares = new int[b];
int[] squared = new int[b];
for(int i = 0; i <= squares.length - 1; i++) {
System.out.print("Write square number " + (i + 1) + " : ");
squares[i] = secondInput.nextInt();
}
for(int j = 0; j <= squares.length - 1; j++) {
squared[j] = squares[j] * squares[j];
}
System.out.print("The square of inputted numbers are: ");
for(int k = 0; k <= squared.length - 1; k++) {
System.out.print(squared[k] + " ");
}
}
}
这里是我得到的错误:
java.lang.NumberFormatException: For input string: "java"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:580)
at java.lang.Integer.parseInt(Integer.java:615)
at Square.main(Square.java:17)
本质上,将用户输入的“Java广场5”为例,它将检测值5,将数组的大小设置为5,然后向该人询问他/她想要平方的5个数字。
以上规定的工作只有整数,但是当我放入一个字符串时,它停止工作。
任何帮助,将不胜感激!
注:我知道我的代码可能是蹩脚的,我还在学习!
考虑减少你的问题到一个[mcve](http://stackoverflow.com/help/mcve),你可能会自己回答你的问题。使用[文档](http://docs.oracle.com/javase/7/docs/api/)找出为什么'Scanner.nextInt()'抛出'NumberFormatException' – BeyelerStudios
嗨,谢谢你的回应,我一直在查看文档,但我无法理解它。 –