2009-06-01 16 views
1

マトリックスを作成する最良の方法は何ですかCC#で文字列の各文字の文字列配列を作成するにはどうすればよいですか?

string A; 
    char[] B = A.ToCharArray(); 
    string[] C = new string[B.Length]; 

    for (int i = 0; i < B.Length ; i++) 
    { 
     C[i] = B[i].ToString(); 
    } 
+0

あなたは、Aに値を割り当てるのとは別に、あなたが投稿したコードの何が間違っていますか? –

+1

行列を作成する方法を教えてもらえません... –

答えて

8

自分のやりたいことをやりたいだけですか?私はあなたがこのようにそれを行うこととします

string A = "ABCDEFG"; 
string[] C = A.Select(c => c.ToString()).ToArray(); 
+3

はい、しかし教授は彼にコードを説明するように頼むかもしれません... –

+5

私は、この男が上記のコードで答えると、教授は実際にそれは彼から来ていないことを速く;説明は必要ありません。 – mquander

1

もう一つのオプションだけでなく、mquanderのはArray.ConvertAll()を使用することです:

string[] C = Array.ConvertAll(A.ToCharArray(), c => c.ToString()); 

の両方のために(私は一般的にLINQのアプローチを好むが、ConvertAllが知っておく価値があります配列、リスト)を使用することができます。

+0

Jon、列挙型で.ToArray()を呼び出すと、サイズを知らないとどのように対処できますか?あたかもList <>のように動的にリサイズしますか?私には決してそれをしなければならないということは決してありませんでしたが、私は周りに道が見えません。本当に残念です。 – mquander

+1

@mquander:List.Addを繰り返し呼び出すかのように、基本的にそれをバッファします。 –

+0

(そして最後に終わったことを検出したら配列に変換します) –

1
using System.Text.RegularExpressions; 

string[] chars = Regex.Split(s, string.Empty); 
+0

私はRegex.Splitが空の表現でそのように働いていることに気づいていませんでした。きちんとした – mquander

+0

ちょうどそれが自分自身を見つけました。 "。"で動作しない理由を理解できなかったので、少なくとも3つのRegex構文の覚えが必要であることを思い出しました。 –

関連する問題