在java中while (!str.equals(""))与while (str!=null)有啥区别?
以下是代码的一段Stringstr=buf.readLine();//读取一行while(!str.equals("")){buff.write(str);//将str写...
以下是代码的一段
String str = buf.readLine();//读取一行
while (!str.equals("")) {
buff.write(str);//将str写入到缓冲区
buff.newLine();//写入换行符
buff.flush();//将缓冲区内的数据写入到文件
str = buf.readLine();
}将上述代码中while改为
while (str!=null)就结束不了循环
PS:
BufferedReader buf = new BufferedReader(new InputStreamReader(System.in)); 展开
String str = buf.readLine();//读取一行
while (!str.equals("")) {
buff.write(str);//将str写入到缓冲区
buff.newLine();//写入换行符
buff.flush();//将缓冲区内的数据写入到文件
str = buf.readLine();
}将上述代码中while改为
while (str!=null)就结束不了循环
PS:
BufferedReader buf = new BufferedReader(new InputStreamReader(System.in)); 展开
4个回答
展开全部
""表示空字符null表示没有指向任何字符。
显然这里没有字符可以结束循环。这里你str被声明并赋值了,它的值可以是空字符,但它的地址不为空。
显然这里没有字符可以结束循环。这里你str被声明并赋值了,它的值可以是空字符,但它的地址不为空。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
while (str!=null)这个一般不提倡使用,字符类型很可能报空指针错误。null!=“”。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一个是比对值,如“!=”和“=”,一种是比对内存地址如:“equals”。你琢磨一下。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询