Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如果条件为真,则停止代码_Java - Fatal编程技术网

Java 如果条件为真,则停止代码

Java 如果条件为真,则停止代码,java,Java,问题是在while循环中,有一条注释 BufferedReader user = new BufferedReader(new FileReader( "C:\\Users\\Ionut\\workspace\\tBot\\persoane.txt")); String line; while ((line = user.readLine()) != null) { if (line.toLowerCase().contains(nume.toLowerCase()))

问题是在while循环中,有一条注释

BufferedReader user = new BufferedReader(new FileReader(
        "C:\\Users\\Ionut\\workspace\\tBot\\persoane.txt"));

String line;
while ((line = user.readLine()) != null) {
    if (line.toLowerCase().contains(nume.toLowerCase())) {
        System.out.println("Ce mai faci " + nume + "?");
        ceva = scanIn.nextLine(); //here i want to stop if the condition is true, but it will show the message and go ahead and execute the rest of the code
    }
}

基本上有两种常见的解决方案:

1-使用
中断

while ((line = user.readLine()) != null) {
    if (line.toLowerCase().contains(nume.toLowerCase())) {
        System.out.println("Ce mai faci " + nume + "?");
        ceva = scanIn.nextLine(); 
        break;  // exists the closest loop
    }
}
2-使用
布尔
标志:

boolean stop = false;
while (!stop && (line = user.readLine()) != null) {
    if (line.toLowerCase().contains(nume.toLowerCase())) {
        System.out.println("Ce mai faci " + nume + "?");
        ceva = scanIn.nextLine();
        stop = true;
    }
}

你听说过break关键字吗?你想打破循环,而不是if条件。是的,我知道这个中断,我的问题是错误的,我不能写更多的代码来更清楚,但我解决了它。感谢+2:System.exit(0)或抛出新的RuntimeException()否,异常不应用作控制流。并且System.exit并不是真正退出循环的方法。否则,我很抱歉忘记按电源按钮……在我的情况下,第二个解决方案成功了,我不得不将其调整到代码的其余部分,但现在可以按照我的要求工作了。谢谢:)