代码不允许用户输入字母

时间:2014-01-16 17:18:18

标签: java

到目前为止,我有一个代码要求用户输入,但我的代码的一部分不接受字母作为输入。例如,如果我输入说woah123它会给我一个数字格式例外。有办法解决这个问题吗?错误在第二行int i = Integer.parseInt(句子)。 句子是用户输入

sentence.replaceAll("\\D", "");
int i = Integer.parseInt(sentence);
i = i * 2 ;
woah.replaceAll("\\d", "" + i);
System.out.println(woah);

1 个答案:

答案 0 :(得分:6)

字符串是不可变的。

通常,您对不可变对象所做的每个修改都会“给”您另一个不可变对象。

所以它应该是:

sentence = sentence.replaceAll("\\D", "");

确实,你必须为woah做同样的事情。

您可以阅读有关immutable object的内容。