私は何かに取り組んでいます。短くてシンプルにするために、2つのクラスがあります。 1つのクラスは、すべてのプログラムが実行されるクラスと、使用されるコードを記述するクラスです。私はすべてのプログラムが実行されるクラスにxとyの整数を持ち、xまたはyを1つ上げたり下げたりするメソッドが必要です。私はその人が4つの選択肢を持つswitch文を持っていますxとyの値が上がったり下がったりするかどうかは、どの選択によって決まるかによって決まります。複数の方法で1つの整数を使用する
import java.util.Scanner;
public class Walking {
public void NorthSouthEastWest(){
int x = 0;
int y = 0;
boolean direction = false;
Scanner input = new Scanner(System.in);
do{String userDirection = input.nextLine();
switch(userDirection){
case "North":
direction = true;
y++;
break;
case "South":
direction = true;
y--;
break;
case "East":
direction = true;
x++;
break;
case "West":
direction = true;
x--;
break;
default:
}
}while(direction == false);
が、私はプログラムを実行すると、私はswitch文のためにコマンドを入力する前と後の私は、xとyをプリントアウトし、xとyがちょうど変更されません。なぜ私は分かりません。どんな解決策ですか?
すべての構文の最初には、間違っています。関係ないと思われる – Akshay
私は両方のクラスでxとyを持っていると思いますか?だから、あなたは1つのクラスの1つのxを変更し、他のクラスの他のxを印刷しますか? – IQV
@Akshay間違っているわけではありません。それを 'while(!direction);'と書くほうが良いでしょうが、それは正しいです。 –