[英]unreachable statement
我设计了一个循环来验证用户对某个问题的输入,直到我添加了该循环为止,它都工作正常。
if (userInput.charAt(0) > NUMCOLS && userInput.charAt(0) < 0);
{
System.out.println("Error, " + userInput + " is an invalid move.");
continue;
}
在这之前
if (userInput.charAt(2) !='-')
{
System.out.println("Error, " + userInput + " is an invalid move.");
continue;
}
现在,每当我尝试编译时,我都会收到一条错误消息,指出这是一条无法访问的语句 ,这是什么原因引起的?
有一个虚假的';' 在您添加的代码的第一行中,使第一行continue;
总是执行!
这两个条件不能同时成立,并且编译器已意识到这一点。
大声朗读:
如果用户输入的第一个字符大于NUMCOLS 并且小于0! 如果NUMCOLS为0或更大,则第二个条件不能同时成立,反之亦然。
您的if
测试有一个空的身体!
因此,下面的代码将始终执行,并且由于存在continue
代码,因此以下指令将永远不会执行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.