2 swan fly Swan_fly 于 2015.06.28 13:02 提问

JAVA新手 问个问题 这个循环怎么老是报错~~

import java.util.*;
public class A3{
public static void main(String[] args){
Scanner in=new Scanner(System.in);
String B="";
do{
System.out.println("是否继续:"+"(yes\no)");
String B=in.next();
}
while(B.equals("yes"));
}
}

报错的内容:Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Duplicate local variable B

5个回答

danielinbiti
danielinbiti   Ds   Rxr 2015.06.28 13:25
 public class A3{
public static void main(String[] args){
Scanner in=new Scanner(System.in);
String B="";
do{
System.out.println("是否继续:"+"(yes\no)");
B=in.next();
}
while(B.equals("yes"));
}
}
qq_22009085
qq_22009085   2015.06.28 13:10

是编译上的问题,应该不是循环上的错

Evankaka
Evankaka   Ds   Rxr 2015.06.28 13:10

string B.定义了两个

ljcmeng
ljcmeng   2015.06.28 14:05

LZ,你只要把do里面的String B = in.next(); 这句话改成 B = in.next()就不会报错了。
错误的原因是重复定义了String类型的变量B.

jw924472918
jw924472918   2015.06.29 08:11

定义两个B建议 "yes".equals(B)

Csdn user default icon
上传中...
上传图片
插入图片