Java 3D阵列不工作

Java 3D阵列不工作,java,string,methods,multidimensional-array,Java,String,Methods,Multidimensional Array,所以这是我的3d阵列方法,我想知道我是否做得对,如果我在主方法中调用它,它会工作吗??自从有人推荐我使用switch语句后,我就开始使用它了,正如你所看到的,我对java真的很陌生 这是为游戏《刽子手》准备的不,不会的。您的开关不包含任何中断语句,因此,在满足计算结果为true的第一个案例后,它将执行此后的所有语句,直到开关结束,或者直到您中断或返回某物 此外,呼吁: public static String[] getWords(int cat, int diff) { String

所以这是我的3d阵列方法,我想知道我是否做得对,如果我在主方法中调用它,它会工作吗??自从有人推荐我使用switch语句后,我就开始使用它了,正如你所看到的,我对java真的很陌生
这是为游戏《刽子手》准备的不,不会的。您的开关不包含任何
中断语句,因此,在满足计算结果为true的第一个
案例后,它将执行此后的所有语句,直到开关结束,或者直到您中断
返回
某物

此外,呼吁:

public static String[] getWords(int cat, int diff) {
    String topic[][][] = new String[3][3][3];
    switch(cat){
        case 0:
            topic[0][0][0] = "Paris";
            topic[0][0][1] = "London";
            topic[0][0][2] = "Sydney";
            diff = 0;
            topic[0][1][0] = "Toronto";
            topic[0][1][1] = "Florida";
            topic[0][1][2] = "Frankfurt";
            diff = 1;
            topic[0][2][0] = "Barcelona";
            topic[0][2][1] = "Vancouver";
            topic[0][2][2] = "Zimbabwe";
            diff = 2;
        case 1:
            topic[1][0][0] = "Halo";  
            topic[1][0][1] = "Fifa";                   
            topic[1][0][2] = "GTA";
            diff = 0;                  
            topic[1][1][0] = "Skyrim";
            topic[1][1][1] = "HITMAN";
            topic[1][1][2] = "Batman";
            diff =1;
            topic[1][2][0] = "Minecraft";
            topic[1][2][1] = "Zombieville";
            topic[1][2][2] = "BoderLands";
            diff =2;
        case 2:
            topic[2][0][0] = "Acura";
            topic[2][0][1] = "Audi";
            topic[2][0][2] = "Bmw";
            diff = 0;
            topic[2][1][0] = "Bentley";
            topic[2][1][1] = "Buggati";
            topic[2][1][2] = "Honda";
            diff = 1;
            topic[2][2][0] = "Lamborghini";
            topic[2][2][1] = "Rolls-Royce";
            topic[2][2][2] = "Mercedes";
            diff = 2;
    }
    return topic[cat][diff];
}
是冗余的,因为从未使用指定的值

因此,它应该是:

diff = 0;
// ...
diff = 1;
// ...
diff = 2;

不,不会的。您的开关不包含任何
中断语句,因此,在满足计算结果为true的第一个
案例后,它将执行此后的所有语句,直到开关结束,或者直到您中断
返回
某物

此外,呼吁:

public static String[] getWords(int cat, int diff) {
    String topic[][][] = new String[3][3][3];
    switch(cat){
        case 0:
            topic[0][0][0] = "Paris";
            topic[0][0][1] = "London";
            topic[0][0][2] = "Sydney";
            diff = 0;
            topic[0][1][0] = "Toronto";
            topic[0][1][1] = "Florida";
            topic[0][1][2] = "Frankfurt";
            diff = 1;
            topic[0][2][0] = "Barcelona";
            topic[0][2][1] = "Vancouver";
            topic[0][2][2] = "Zimbabwe";
            diff = 2;
        case 1:
            topic[1][0][0] = "Halo";  
            topic[1][0][1] = "Fifa";                   
            topic[1][0][2] = "GTA";
            diff = 0;                  
            topic[1][1][0] = "Skyrim";
            topic[1][1][1] = "HITMAN";
            topic[1][1][2] = "Batman";
            diff =1;
            topic[1][2][0] = "Minecraft";
            topic[1][2][1] = "Zombieville";
            topic[1][2][2] = "BoderLands";
            diff =2;
        case 2:
            topic[2][0][0] = "Acura";
            topic[2][0][1] = "Audi";
            topic[2][0][2] = "Bmw";
            diff = 0;
            topic[2][1][0] = "Bentley";
            topic[2][1][1] = "Buggati";
            topic[2][1][2] = "Honda";
            diff = 1;
            topic[2][2][0] = "Lamborghini";
            topic[2][2][1] = "Rolls-Royce";
            topic[2][2][2] = "Mercedes";
            diff = 2;
    }
    return topic[cat][diff];
}
是冗余的,因为从未使用指定的值

因此,它应该是:

diff = 0;
// ...
diff = 1;
// ...
diff = 2;

你需要休息一下;在两种情况之间。它只是简单地检查每一个案例,因为没有中断。如果是案例1,每个案例都有,如果是案例2,则为案例2&3,只有案例3


所以3是唯一一个可以正常断裂的,因为这是最后一个,所以你不需要它

你需要休息一下;在两种情况之间。它只是简单地检查每一个案例,因为没有中断。如果是案例1,每个案例都有,如果是案例2,则为案例2&3,只有案例3


所以3是唯一一个可以正常断裂的,因为这是最后一个,所以你不需要它

您是否注意到在每个案例的结尾都没有
break
语句?这是不太可能的。我们无法真正判断它是否有效,因为我们不知道它试图实现什么-但这不太可能是最好的方法,IMO。在主要方法中,将询问他们想要玩什么类别和难度级别,以及他们选择什么,将读入方法并进入该部分,您是如何做到的?您是否注意到在每个案例的结尾都没有
break
语句?这是不太可能的。我们无法真正判断它是否有效,因为我们不知道它试图实现什么-但这不太可能是最好的方法,IMO。在主要方法中,将询问他们想要玩什么类别和难度级别,以及他们选择什么,将读入方法并进入该部分,如果用户说他们想玩的类别是汽车,困难是很容易的,那么你会怎么做呢?如果是这样的话this@N00b_JAVA你是不是每次都只问他们想要什么困难?因为如果是这样的话,它应该在开关外面。或者你是说每个街区都有不同的难度?只要我50美分,不要在方法中使用“静态”构造,你可以将此数组移动到静态字段中。在案例0中,单词paris、london、Sydney对于类别位置来说很容易,而单词tornto、florida、frankfurt对于类别位置来说则是中等。在案例1中,类别是游戏,它和place是一样的,它会询问用户想要简单、中等还是硬,以及在哪个类别中放置游戏或汽车。然后程序应该使用这种方法,从给定的难度和类别中获取单词given@N00b_JAVA就我个人而言,我不会这样做,我会创建
MenuGroup
对象,这些对象在
菜单中包含项目和它们的难度
对象,这些对象在
类别中包含游戏,由用户选择。在主方法中,你会如何称呼它,比如如果用户说他们想玩的类别是汽车,难度很简单,你会怎么做?如果是这样的话this@N00b_JAVA你是不是每次都只问他们想要什么困难?因为如果是这样的话,它应该在开关外面。或者你是说每个街区都有不同的难度?只要我50美分,不要在方法中使用“静态”构造,你可以将此数组移动到静态字段中。在案例0中,单词paris、london、Sydney对于类别位置来说很容易,而单词tornto、florida、frankfurt对于类别位置来说则是中等。在案例1中,类别是游戏,它和place是一样的,它会询问用户想要简单、中等还是硬,以及在哪个类别中放置游戏或汽车。然后程序应该使用这种方法,从给定的难度和类别中获取单词given@N00b_JAVA就个人而言,我不会这样做,我会构建
MenuGroup
对象,这些对象在
Menu
中包含项目及其难度,这些对象在用户选择的
类别中包含游戏。