Ich möchte anstelle von if-sonst Schalter verwenden, wie ich habe, dass es besser ist, wenn es viele Wenn-sonst gibt. Das Problem ist, dass ich mehrere Argumente habe, also weiß ich nicht, wie ich damit umgehen soll.Wie verwende ich switch() mit mehreren Argumenten?
Hier sind meine if-anderes:
if(frame.height()/2 + margin < pt.y){
System.out.println("down");
drone.getCommandManager().down(20).doFor(100);
drone.getCommandManager().hover();
}
else if(frame.height()/2 - margin > pt.y){
System.out.println("up");
drone.getCommandManager().up(20).doFor(100);
drone.getCommandManager().hover();
}
else if(frame.width()/2+margin < pt.x){
drone.getCommandManager().spinRight(30).doFor(33);
drone.getCommandManager().hover();
System.out.println("RIGHT");
}
else if(frame.width()/2-margin > pt.x){
drone.getCommandManager().spinLeft(30).doFor(33);
drone.getCommandManager().hover();
System.out.println("LEFT");
}
else if(frame.width()/2+margin > pt.x && frame.width()/2-margin<pt.x){
System.out.println("GO");
drone.getCommandManager().forward(30).doFor(time+2000);
drone.getCommandManager().hover();
}
else{
drone.getCommandManager().hover();
}
Sie nur switch-Anweisung verwenden können, wenn Sie haben eine einzelne Variable, um den Fluss zu steuern. Im obigen Beispiel haben Sie viele Bedingungen zu überprüfen, hier in diesem speziellen Fall wird SWITCH Anweisung nicht empfohlen. – sauumum