2

たとえば、{1,2,3,4}値のint配列があります。

この番号を、たとえば次のようなリストボックスに入れたいと思います。

listBox2.Items.Add("After Inserting (" + page[i].ToString() + ')' + <use all my numbers like this : 1234 here>+"Page Fault = " + pf.ToString());  

出力:

After Inserting (3) 1234 page fault = 5

1234は単なる例です。私の配列ははるかに大きいです。

どうすればC#でそれを行うことができますか?

4

3 に答える 3

5

次を使用できますString.Join(実際にはIEnumerable<T>過負荷がかかります)。

String joined = String.Join("", yourArray); 

私はC#を初めて使用しますが、テキストの間に文字列を配置する方法がわかりません。

String.Formatテキストを作成し、読みやすさを向上させるために使用できます。

var inserted = page[i].ToString();
var allInserted = String.Join("", yourArray);
var pageFault = pf.ToString();
var itemText = String.Format("After Inserting ({0}) {1} page fault = {2}"
                             ,inserted, allInserted, pageFault);
listBox2.Items.Add(itemText);

編集2

配列内の1つの数字の代わりにいくつかの文字を置き換えることはできますか?私の配列:{1,2,3,4、-1 "}出力:1,2,3,4、empty

はい、出力を置き換えることができます:

String.Join("", yourArray.Where(i => i != -1));

編集3

-1を除外する方法は理解していますが、何かをそれに置き換える方法がわかりませんでした...-1の代わりに「空」のように

どうぞ ...

String.Join(", ", intArray.Select(i => i == -1 ? "empty" : i.ToString()));
于 2012-05-22T08:28:09.367 に答える
2
string.Join(", ", intArray.Select(i => i.ToString())) 
于 2012-05-22T08:27:56.417 に答える
2

string.JoinはToList()でも機能します

int[] numbers = new int[] {1,2,3,4,5};
string s = string.Join("", numbers.ToList());
Console.WriteLine(s);

出力は="12345"です

編集:私はあなたの配列の名前を知らないので、私はまだ上記の数字の例を使用します

listBox2.Items.Add("After Inserting (" + page[i].ToString() + ") " + 
                    string.Join("", numbers.ToList()) + 
                    " Page Fault = " + pf.ToString());   

編集:

-1のような数字を除外するには

int[] numeri = new int[] {1,2,3,4,5,-1};
string s = string.Join(",", numeri.Where(i => i != -1).ToList());
Console.WriteLine(s);

数字を区切るためにコンマを追加したことに注意してください

于 2012-05-22T08:30:12.130 に答える