0

我是初学者,请看以下内容:

public class CaseBreak {
    public static void main(String[] args) {
        Scanner keyboard = new Scanner(System.in);
        int key = 1;
        int dob = keyboard.nextInt();
        switch(dob + key + 1)
        {
        case 1:
            System.out.println("First switch");
            break;
        case 2:
            System.out.println("Second switch");
            break;
        case 3:
            System.out.println("Third switch");
            break;    
        case 4:
            System.out.println("Fourth switch");
            break;    
        case 5:
            System.out.println("Fifth switch");
            break;    
        case 6:
            System.out.println("Sixth switch");
            break;    
        case 7:
            System.out.println("Seventh switch");
            break;    
        default:
            System.out.println("Out of Switch! there is no");
        } 
    }
}

以下一切运行良好。但是我想打印该数字以及当键盘输入超出大小写时调用的默认语句。像 ex- number 7 这样的东西进入默认状态,我得到“Out of Switch!没有”。我只是希望它也应该在语句之后出现数字(Out of Switch!没有 7)

4

3 回答 3

4

您可以使用 将字符串和数字相加+,理想情况下,您也应该将其存储dob + key + 1到变量中,这样您只需计算一次。

int i = dob + key + 1
switch(i)
{
    // ...
    default:
        System.out.println("Out of Switch!! there is no" + i);
} 
于 2013-03-29T12:43:56.327 回答
1

你确实有号码dob + key + 1。你为什么不打印它?

注意:将dob + key +1 括起来非常重要,( )因为+是连接运算符,并且您想告诉编译器对数字求和

default:
    System.out.println("Out of Switch!! there is no " + (dob + key + 1));

如果你这样写:

default:
        System.out.println("Out of Switch!! there is no " + dob + key + 1);

然后你会得到一个输出:(说 dob 是 1,key 是 2)

脱离开关!!没有121

但是如果你用括号括起来,那么你会得到三个整数的实际总和。

于 2013-03-29T12:43:12.360 回答
0
default:
System.out.println("Out of Switch!! there is no"+dob);

我想这就是你要找的。它将告诉输入了哪个数字,并与默认情况下的声明一起打印相同的数字。这是您想要查看作为输入提供的数字的时候。如果您想查看+1交换机中完成的整体数字,请执行System.out.println("Out of Switch!! there is no"+dob+key+1);

于 2013-03-29T12:44:27.010 回答