用``布尔值''理解一块代码



我正在寻找与键盘交互的一些示例,并偶然发现了我发现有趣的代码。但是我很难理解其中的某些部分(在下面标记了(。我不明白整个"布尔"'''''''''switch'''''''''''''和'case'查看参考,但仍然如此。有人可以在简单的Maner中解释它们的工作方式吗?

float x = 300;
float y  = 300;
float speed = 5;
boolean isLeft, isRight, isUp, isDown; 
int i = 0;
void keyPressed() {
  setMove(keyCode, true);
if (isLeft ){
  x -= speed;
}
if(isRight){
  x += speed;
}
}
void keyReleased() {
  setMove(keyCode, false);
}
boolean setMove(int k, boolean b) {// <<<---  From this part down
  switch (k) {
  case UP:
    return isUp = b;
  case DOWN:
    return isDown = b;
  case LEFT:
    return isLeft = b;
  case RIGHT:
    return isRight = b;
  default:
    return b;  }
}  

这样的问题最好通过参考来回答:

工作类似于if else结构,但是当您需要在三个或多个替代方案之间进行选择时,switch()更方便。程序控制的跳转到表达式相同的值。除非由break重定向,否则执行交换机中的所有剩余语句。只能将可以转换为整数(字节,char和int(转换为表达参数的原始数据类型。默认值是可选的。

代码的其余部分将相应的变量设置为您作为b参数传递的任何值,然后将其返回。

您应该养成调试代码的习惯。添加打印语句以确切找出代码在做什么。

最新更新