3D阵列不工作


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];
}

所以这是我的方法与3d数组,我想知道如果我做得对,也如果我在主方法中调用它会工作吗??我使用switch语句,因为有人推荐我,我真的是新的java,正如你所看到的这是游戏Hangman

不会的。您的交换机不包含任何break;语句,因此,在它满足第一个计算结果为true的case之后,它将执行其后的所有语句,直到交换机结束,或者直到您的break;return等。

另外,对

的调用
diff = 0;
// ...
diff = 1;
// ...
diff = 2;

是多余的,因为赋值永远不会被使用。

所以应该是:

switch(cat)
{
    case 0:
        topic[0][0][0] = "Paris";
        topic[0][0][1] = "London";
        topic[0][0][2] = "Sydney";
        topic[0][1][0] = "Toronto";
        topic[0][1][1] = "Florida";
        topic[0][1][2] = "Frankfurt";
        topic[0][2][0] = "Barcelona";
        topic[0][2][1] = "Vancouver";
        topic[0][2][2] = "Zimbabwe";
        break;
    case 1:
        topic[1][0][0] = "Halo";
        topic[1][0][1] = "Fifa";
        topic[1][0][2] = "GTA";
        topic[1][1][0] = "Skyrim";
        topic[1][1][1] = "HITMAN";
        topic[1][1][2] = "Batman";
        topic[1][2][0] = "Minecraft";
        topic[1][2][1] = "Zombieville";
        topic[1][2][2] = "BoderLands";
        break;
    case 2:
        topic[2][0][0] = "Acura";
        topic[2][0][1] = "Audi";
        topic[2][0][2] = "Bmw";
        topic[2][1][0] = "Bentley";
        topic[2][1][1] = "Buggati";
        topic[2][1][2] = "Honda";
        topic[2][2][0] = "Lamborghini";
        topic[2][2][1] = "Rolls-Royce";
        topic[2][2][2] = "Mercedes";
        break;
}

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

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

相关内容

  • 没有找到相关文章

最新更新