如何从键盘读取字符输入 - '\ r'? 我测试了2种方法。 第一种方法是: 在第一个回合循环中不能停止行znak =(char)System.in.read();我不知道这是为什么。JAVA读取字符输入 - ' r'从键盘循环中
public static void lista() {
Ewidencja tmp = null;
char znak = 0;
for(Ewidencja el: Lista)
{
if (znak == 'Q')
{
el = tmp;
}
tmp = el;
System.out.println("[Enter] - zapisz");
System.out.println("[Q] - cofnij");
try {
znak = (char)System.in.read();
System.out.println(znak);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(znak == '\r')
{
continue;
}
else if(znak != 'Q')
{
System.exit(-1);
}
}
}
第二种方法是使用类Scanner,但是这种方法不读取字符输入'\ r'。
您可以检查空字符串。 'if(znak =='')//这就是一个换行符' – deadlock 2013-04-08 14:23:12
有时它是'\ r',有时候它是'\ r \ n' ...但是真的,你应该使用扫描器。 – Shark 2013-04-08 14:29:35
扫描仪不读取字符输入。在调试时,我按下输入,我debuger显示我'\ r' – 2013-04-08 14:35:42