我正在使用此
while ((nextLine = br.readNext()) != null) {
非常频繁,但我真的不明白。
它是上传csv文件的代码的一部分
基本上我想知道,热门阅读它。
下一行定义为:String[] nextLine;
答案 0 :(得分:3)
循环部分很简单:
while (____ != null) {
当____
不等于null
时,它会继续循环播放。那么让我们来看看____
正在做什么:
(nextLine = br.readNext())
该代码是一个assignemnt:它调用br.readNext()
并将结果分配给nextLine
。关键是赋值的结果是已分配的值。
所以:
如果br.readNext()
返回的内容不是null
,则会将其分配给nextLine
,代码会进入循环体。
如果br.readNext()
返回null
,则会将其分配给nextLine
并且循环终止,因为null != null
为false。
答案 1 :(得分:2)
该行
while ((nextLine = br.readNext()) != null) {
利用了这样一个事实,即“赋值”也是一个具有值的“表达式” - 指定的值。
所以从括号内部读出的行执行以下操作:
readNext()
; br
nextLine
; null
; null
,它会跳过while
循环的主体,到7。; null
,则会执行while
循环的正文;