为了账号安全,请及时绑定邮箱和手机立即绑定

求教为什么这样写不能退出while循环

求教为什么这样写不能退出while循环

胡说叔叔 2019-04-18 23:19:09
package io; import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; public class SystemIndemo {     public static void main(String[] args) throws Exception{         InputStream in = System.in;         InputStreamReader reader = new InputStreamReader(in);         BufferedReader br = new BufferedReader(reader);         String str = null;         while(str!="z"){             str = br.readLine();             System.out.println("Input :"+str);         }         System.out.println("The end.");         br.close();     } }为什么输入z回车之后while循环不会退出呢?
查看完整描述

3 回答

?
BIG阳

TA贡献1859条经验 获得超6个赞

String str = "";

while(!"z".equals(str) && str != null){
str = br.readLine();
System.out.println("Input :"+str);
}这样写比较保险报吧。


查看完整回答
反对 回复 2019-05-06
?
偶然的你

TA贡献1841条经验 获得超3个赞

str!="z",判断字符串相等应该用equals


查看完整回答
反对 回复 2019-05-06
?
qq_笑_17

TA贡献1818条经验 获得超7个赞

一楼说的是对的,但是就算是用equals,也应该这么写,"z".equals(str),避免产生空指针。


查看完整回答
反对 回复 2019-05-06
  • 3 回答
  • 0 关注
  • 488 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号