有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

if语句如何在java游戏中使用switch和case?

我正在Slick2D中制作一个游戏,我有很多“如果”语句,我想摆脱它。这是我的代码:

if((playerPositionX>570 && playerPositionX<835) && (playerPositionY>16 && playerPositionY<260)){
    g.setColor(Color.red);
    g.drawString("Ready to play? press enter!", 400,350);
}

一切都很好,但我有8个,向上,显然坐标不同。 所以我想知道是否有可能使用switch和case方法来解决这个问题


共 (1) 个答案

  1. # 1 楼答案

    不能将开关的范围用作案例。换句话说,类似这样的事情:

     Switch(playerPosition)
         case 570-835: 
         ....
    

    不存在。你可以做:

    int num;
    
    if (playerPositionX>570 && playerPositionX<835){
        num = 0;
    if (playerPositionX>836 && playerPositionX<1000){
        num = 1;
    

    然后

     Switch(num){
         case 0: 
         ...
         case 1: 
         ...
    

    但是您仍然必须使用if语句