日期:2014-05-20  浏览次数:21003 次

while条件中不能定义变量吗?
Java code
while ((String str2=br.readLine())!= null) {


  System.out.println(str2);
  str2 = br.readLine();
  }
  fr.close();
  br.close();
是错的
  String str2;
  while ((str2=br.readLine())!= null) {


  System.out.println(str2);
  str2 = br.readLine();
  }
  fr.close();
  br.close();
这样却没有问题,为什么?


------解决方案--------------------
while不像for语句,while后面紧跟的就是一个boolean变量,不能定义变量的哈
------解决方案--------------------
第一个while跟第二个while不同,你第一个while是在里面声明一个变量,而第二个却是,给变量赋值而已!
就像:int i=0;int b=1;if(i=b>0){....}