3

如何添加到 foreach 循环中的数组。

伪例子

String[] mylist;

foreach ( ipadress ip in list )
{
    // I want to add to array ip.ToString();
}
// then put my list to a textbox
4

5 回答 5

14

如果您使用的是 linq,请尝试以下操作:

String[] mylist = list.Select(I => Convert.ToString(I.ip)).ToArray();
于 2012-10-17T16:31:57.980 回答
6

首先,如果这是一个家庭作业问题,它真的应该被标记为这样。

无论如何,假设您完全控制了要向其传递值的 string[],并假设您的 ipaddress 类已重载 .ToString() 以返回一些智能信息:

string[] myList = new string[list.Count];
int i = 0;
foreach (IPAddress ip in list)
{
    myList[i++] = ip.ToString();
}

虽然我不得不质疑你为什么要在数组和列表对象之间来回切换。

于 2012-10-17T17:02:53.073 回答
2

快速而简短:

 String[] myList;

 List<int> intList = new List<int> { 1, 2, 3, 4 };

 myList = intList.ConvertAll<String>(p => p.ToString()).ToArray<String>();
于 2012-10-17T16:34:59.643 回答
-1

想通了……编程新手……谢谢大家。我使用了 tharindlaksh 发布的相同代码。

这是它的样子:

string[] all ;
int i = 0;

foreach (IPAddres ip in host.AddressList)
{
     all[i] = ip.ToString();
     i++;
}

textBoxMain.Text = all[0] + "\n" + all[1] + \n" + all[2] + "\n" + all[3];
于 2012-10-17T17:16:45.990 回答
-2
int i=0;
String[] mylist;
foreach(ipaddress ip in list)
{
mylist[i]=ip.ToString();
i++
}
于 2012-10-17T16:36:49.597 回答