繁体   English   中英

为什么在输入$后不退出while循环

[英]why am I not exiting the while loop after I enter a $

当我输入$时,我希望退出while循环,但它会继续循环。 谢谢您的帮助

import java.io.*; 
import java.util.*;

public class test {

    public static void main(String[] args) {

        String oneLine = "";
        try {
            BufferedReader indata = new
                    BufferedReader(new InputStreamReader(System.in));

            while (!oneLine.equals("$")) {

                oneLine = indata.readLine();
                System.out.println(oneLine);
            }
        }
        catch (Exception e) {
            System.out.println("Error --" + e.toString());
        }
        System.out.println("outside of while \n");
        return;
    }
}

将您的代码更改为:

String oneLine = "";
while ( !oneLine.equals ("$") && oneLine != null){
   oneLine = indata.readLine();
   System.out.println(oneLine); 
}

您正在将BufferedReader对象与String进行比较。 我相信您想将其与当前行进行比较。 另外,如注释中所述,您需要将oneLine初始化为非null值,以便在首次进入while循环时避免NullPointerException

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM