这是代码。我给我一个开关在哪里的错误。请帮忙。也许是一个链接到一个网站,在那里我可以学到这一点。
public class Main{
public static void main(String[] args) {
int swValue;
System.out.println("***************************************Menu***************************************");
System.out.println("Spauskite 1 jei norite atspauzdinti programje sukurtu objektu sarasus");
System.out.println("Spauskite 2 jei norite sukurti naujus objektus, ju duomenis ivedant is klavieturos");
System.out.println("Spauskite 3 jei norite iskviesti objektu metodus");
switch (swValue) {
case 1: System.out.println("1 Selected");
break;
case 2: System.out.println("2 Selected");
break;
case 3: System.out.println("3 Selected");
break;
default: System.out.println("Invalis selection");
break;
}
在初始化本地变量之前使用它是一个编译器错误,而您没有初始化它。
看起来您需要在switch
语句之前读取用户输入并初始化swValue
。
尝试创建某种输入读取;
//print out menu options
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
try {
swValue = Integer.parseInt(br.readLine());
} catch (IOException ioe) {
ioe.printStackTrace();
}
//switching code
swValue
没有初始化,即没有分配值。那么,如何将其与任何东西进行比较?
如果你想从用户那里获得一个值,你可以做任何一件事:
-
接受
swValue
作为parameter
:void main(String[]args,int swValue)
-
使用
Scanner
或BufferedReader
类在运行时获取输入。