文字列に変換すると AZ を出力する char 配列がありますが、インデックスの場所から文字を取得しようとしても何も得られませんか? ..
char[] codes= new char[156];
for (int i = 65; i < 91; i++) codes[i] = (char)i;
Console.WriteLine(codes[2]);
char
をインデックス 65に格納し始めているためです。
Console.WriteLine(codes[65]); // A
巨大な配列を作成したが、その小さなセクションにのみデータを入力し、データを含まない部分にインデックスを付けているという事実に関係しています。
範囲を使用して単純化することを検討できます..
var chars = Enumerable.Range(65, 90).Select(c => (char)c).ToArray();
Console.WriteLine(chars[2]);
または、コードをこれに変更できます。
char[] codes = new char[26];
for (int i = 0; i < 26; i++)
{
codes[i] = (char)i;
codes[i] += 'A';
}
Console.WriteLine(codes[2]);
以下のコードを試してください Console.WriteLine(codes[2].ToString()); その理由は、Console.WriteLine が文字列値しか表示できないためです。