1

我正在使用扫描仪从文本文件中检索。当我尝试从 while 循环之外访问我的 info1 时,它说变量 info1 可能尚未初始化,但我已经在 while 循环之外对其进行了初始化。如何使用我的代码从 while 循环外部访问它?

String info1,info2,info3,info4,info5,info6,info7;
boolean infoTrue = true;
do{ 
while(custInfo.hasNext())
  {

  info1 = custInfo.next();
  info2 = custInfo.next();
  info3 = custInfo.next();
  info4 = custInfo.next();
  info5 = custInfo.next();
  info6 = custInfo.next();
  info7 = custInfo.next(); 

  if(info2== loginID && info3==password)
  {
    infoTrue=false;
  }
  }
 }while(infoTrue!=false);
  System.out.println(info1);
4

3 回答 3

1

你必须在while循环之前初始化它

String info1 = "", info2 = "";//rest is the same
//your loop

您还可以使用快捷方式,例如

String info1 = info2 = info3 = "";
于 2013-04-27T15:25:01.983 回答
1
String info1,info2,info3,info4,info5,info6,info7;

上面的行应该是:

String info1="",info2="",info3="",info4="",info5="",info6="",info7="";
于 2013-04-27T15:28:11.077 回答
0

根据您的代码,您有两个 while 循环,可能您可能已经在第一个 while 循环内对其进行了初始化,但是您在两个循环之外访问它。因此,请确保您已在两个循环之外对其进行了初始化。

String info="";
do{
    while{
    }
while();
Sysout(info);

还要放一个断点,看看它的去向!

于 2013-04-27T15:31:35.127 回答