私はオペレータの中でスキャナでユーザ入力を読み込みたいです。スキャナは、あらかじめ定義された演算子が入力されている限り、入力を読み取る必要があります。このように動作すると思っていましたが、while部分にcommand cannot be resolved
を返します。java-scannerは定義された文字列のみを許可します
String [] operators = new String [3];
operators[0] ="!";
operators[1] ="&&";
operators[2] ="||";
Scanner sc = new Scanner(System.in);
System.out.println("Command: ");
do {
String command = sc.next();
} while(!command.equals(operators[0]) || !command.equals(operators[1]) || !command.equals(operators[2]));
'command'はあなた' while'ブロックのスコープ内で宣言され、その外側に評価されます。また、 'sc.next()'のどの値に対して 'while'文がfalseに評価されますか? – jsheeran
「返品」という言葉のために質問が誤解されました。ここのコードは何も返さない。代わりに、コンパイラエラーが発生すると言うのがより正確です。私はこれがあなたがいくつかの用語を学ぶのを助けて、将来的に質問をより明確にすることができることを願っています。 –