3

私はC#にかなり慣れていないので、練習問題として、YとNのコンソール入力をtrueとfalseのブール配列(Y = true N = false)に変換しようとしていました。

ここに画像の説明を入力

割り当て呼び出し、インクリメント、デクリメント、待機、および新しいオブジェクト式のみをステートメントとして使用できます」というエラーが表示されます。助言がありますか?

4

4 に答える 4

1

これは機能し、少し簡単です。

var array = Console.ReadLine().Select(x => x == 'y');

リストと配列を扱っているからだと思います。それはあなたの方法を試したときに私が得たエラーでした。

于 2012-10-27T20:13:55.783 に答える
1

試す:

bool[] tempArray = Console.ReadLine().ToList().ConvertAll(ch => Char.Equals(ch, 'Y')).ToArray();

ラムダは、宣言でパラメータの型を指定する必要はなく、自動的に推論されます。boolまた、 を使用してs のリストを配列に変換する必要がありますToArray

于 2012-10-27T20:15:20.380 に答える
1
bool[] tempArray = Console.ReadLine().Select(ch => ch == 'Y').ToArray();
于 2012-10-27T20:15:30.913 に答える
0

エラーが発生しないようにするには:

var bools = Console.ReadLine().Where(x => Char.ToUpperInvariant(x) == 'Y' || Char.ToUpperInvariant(x) == 'N').Select(x => x == 'Y');
于 2012-10-27T20:32:36.257 に答える