友人、
私はデータリストを持っていると考えてください
List dataList = new List() { "Apple", "Microsoft", "exit", "Oracle", "Android" };
int i = 0; while (dataList[i] != "exit" || dataList[i] != "test") { Console.WriteLine(dataList[i]); i++; }
出力は Apple と Microsoft のみであると予想されます。インデックス 2 で「exit」に遭遇すると停止するはずです。
実際に何が起こるか (「終了」を検証していると考えてください) は、最初の条件が失敗したことです。これは、NotEqualTo 演算子が正常に動作することを意味します。問題は OR 演算子です。「exit」は「test」と等しくないため、条件はパスし、さらにループに入ります。
データは「exit」および「test」と同じであってはなりません。
あなたが問題を抱えていると思います。参考までに、While(condn){} ここでは、ブール値 (true または false) を出力する任意の条件について言及できます。
ありがとうございます。間違っていたら訂正してください。