我有一个int数组,例如{1,2,3,4}值。
我想把这些数字放在我的列表框中,例如:
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#中做到这一点?
答案 0 :(得分: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,2,3,4,-1“}输出:1,2,3,4,空
是的,您可以替换输出:
String.Join("", yourArray.Where(i => i != -1));
编辑3 :
我明白如何排除-1但我不明白我怎么做 用那个代替东西...比如“空”代替-1
我们走了......
String.Join(", ", intArray.Select(i => i == -1 ? "empty" : i.ToString()));
答案 1 :(得分:2)
string.Join(", ", intArray.Select(i => i.ToString()))
答案 2 :(得分: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);
注意,添加逗号分隔数字