我正在寻找与键盘交互的一些示例,并偶然发现了我发现有趣的代码。但是我很难理解其中的某些部分(在下面标记了(。我不明白整个"布尔"'''''''''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
参数传递的任何值,然后将其返回。
您应该养成调试代码的习惯。添加打印语句以确切找出代码在做什么。