我正在尝试读取必须包含空格的用户输入字符串。现在我正在使用:
check = in.nextLine();
position = name.names.indexOf(check);
if (position != -1) {
name.names.get(position);
} else {
System.out.println("Name does not exist");
}
这只会返回各种错误。
答案 0 :(得分:0)
你的问题不是很明确 - 显然你喜欢你正在检查这个人所输入的内容是否与已知列表相匹配,而不是它确实或没有空格,但是接受你的话:< / p>
a)正则表达式 b)indexof() - 如果你的支票很简单
也可能也希望对输入行进行长度检查(即所有行都应该<255个字符或其他东西),只是为了偏执
如果你做的更像你编写的样本,那么你会做类似
的事情ArrayList<String> KnownListOfNames = .....
if(!KnownListOfNames.Contains(UserEnteredString)){
System.out.println("Name not found");
}
通常你也会先做一些基本的输入验证 - 如果你想了解更多的话,可以谷歌进行“SQL注入”。