输入是一个字符串s,其值设置为A
另外,请注意X是一个字符,Y是一个整数
if (s.length() == 1)
{
X = s.charAt(0);
Y = 1;
}
else
{
X = s.charAt(0);
Y = Integer.parseInt(s.substring(1));
}
A的长度是1,所以不应该通过'如果'而不是'其他'? 我试过了一个&else; else if if;和'如果':
if (s.length() > 1)
{
X = s.charAt(0);
Y = Integer.parseInt(s.substring(1));
}
当我在另一个班级使用它时,它给我一个错误
NumberFormatException: For input string: "A"
我哪里错了?是在这个if条件还是我在其他班级出错了?
答案 0 :(得分:0)
只是代码的副本,以证明您的代码没有错误。在其他地方肯定有其他错误但在此处显示的代码中没有。
String s = "A";
char X;
int Y;
if (s.length() == 1) {
System.out.println("'if' block executed");
X = s.charAt(0);
Y = 1;
} else {
System.out.println("'else' block executed");
X = s.charAt(0);
Y = Integer.parseInt(s.substring(1));
}
System.out.println("X = " + X + ", Y = " + Y);
输出到控制台是:
'if' block executed
X = A, Y = 1