我可以实例化开关吗?或者这有什么问题



所以,到目前为止,一切都在膨胀,因为我以前从未在多个类的个人项目上工作过,而且到目前为止,当它给我错误时,我能够自己修复所有内容。我不确定我是否可以实例化一个switch语句,或者我是否真的为我正在尝试做的事情使用了正确的词汇。如果我不能,我可以得到一些帮助,我可以改变什么来使这项工作和/或在未来帮助我吗?这是我的代码:

import java.io.*;
import java.util.*;
public class SetUp_Menu    {
    public switch setup_menu;
    public static void main(String args[]){
        System.out.println("Welcome to setup. ");
        System.out.println("1. First setup");
        System.out.println("2. I didn't mean to setup, go back");
        switch(setup_menu){
            case 1:
                SetUp first = new SetUp();
            }
        }
    }   
}

这是我的错误:

文件: C:\

Users\NoNeedForThisToBeHere\Ruby\SetUp_Menu.java [行: 6]
错误:非法启动类型
文件: C:\Users\NoNeedForThisToBeHere\Ruby\SetUp_Menu.java [行: 6]
错误:";"预期

任何帮助将不胜感激,谢谢!

您不实例化switch对象。 你可以声明一个int和枚举,或者在Java 7+中,一个String,你可以打开它。 根据您的菜单,int是一个不错的选择。

public int setup_menu;

您需要使用用户的选择填充setup_menu

>switch控制流(http://en.wikipedia.org/wiki/Control_flow#Case_and_switch_statements(的Java(和许多其他(语言的保留字,不是可以实例化的类型,也不是可以用作变量名的有效标识符。

试试

  public class SetUp_Menu {
    // modify this line public switch setup_menu;
    public static int setup_menu = 0;
    public static void main(String args[]) {
        System.out.println("Welcome to setup. ");
        System.out.println("1. First setup");
        System.out.println("2. I didn't mean to setup, go back");
        switch (setup_menu) {
        case 1:
            SetUp first = new SetUp();
            break;
        default:
            break;
        }
    }
}

不实例化开关对象。你可以声明一个整数、枚举、字节、字符和短,或者在 Java 7+ 中声明一个字符串

在 Java

中,您可以使用 intString(来自 Java 7(作为 switch 语句的开关参数,而不是 "switch" 对象。

例如,你可以从标准输入中获取一个数字,并用开关来使用它:

import java.io.*;
import java.util.*;
public class SetUp_Menu
{
     public static void main(String args[])
     {
       System.out.println("Welcome to setup. ");
       Scanner in = new Scanner(System.in);
       int menu_choice = in.nextInt();
       switch(menu_choice)
       {
         case 1:
           System.out.println("1. First setup");
           break;
         case 2:
           System.out.println("2. Second setup");
           break;
         default:
           System.out.println("This setup case will be executed " + 
                              "if not any else case is met (optional).");
           break;
       }
    }
}

请注意每个箱子内的break;行。这是因为如果不从 switch 语句中退出,将执行所选案例下方的事例(控制流将继续(,直到找到中断或返回命令或执行所有事例。

有关更多信息,请参阅此处:http://docs.oracle.com/javase/tutorial/java/nutsandbolts/switch.html

相关内容

最新更新