如何将 ArrayList 转换为字符串 C#

Rol*_*sta 4 string arraylist c#-4.0

ArrayList arr = new ArrayList();
string abc =
Run Code Online (Sandbox Code Playgroud)

我应该怎么做才能将arraylist 转换为字符串,例如abc = arr;

更新的任务我可以完成工作的其他考虑因素是字符串的连接(需要这种方式的帮助)。假设我有一个
字符串 s="abcdefghi.."
通过在其上应用 foreach 循环并通过匹配某些条件并连接字符串类型的某些 insatnce 变量中的每个字符值来获取字符,
即字符串 subString=+;
像这样的东西
string tem = string.Empty; string temp =string.Empty; temp = string.Concat(tem,temp);

Ada*_*rth 7

使用一点 linq 并假设您的ArrayList包含string类型:

using System.Linq;

var strings = new ArrayList().Cast<string>().ToArray();

var theString = string.Join(" ", strings);
Run Code Online (Sandbox Code Playgroud)

进一步阅读:

http://msdn.microsoft.com/en-us/library/57a79xd0.aspx

将其他类型转换为字符串:

var strings = from object o in myArrayList
              select o.ToString();

var theString = string.Join(" ", strings.ToArray());
Run Code Online (Sandbox Code Playgroud)

Join方法的第一个参数是分隔符,我选择了空格。听起来你的字符都应该没有分隔符,所以使用""orstring.Empty代替。

更新:如果你想连接少量的字符串,+=运算符就足够了:

var myString = "a";
myString += "b"; // Will equal "ab";
Run Code Online (Sandbox Code Playgroud)

但是,如果您计划在紧密循环中连接不确定数量的字符串,请使用StringBuilder

using System.Text;

var sb = new StringBuilder();

for (int i = 0; i < 10; i++)
{
    sb.Append("a");
}

var myString = sb.ToString();
Run Code Online (Sandbox Code Playgroud)

由于字符串的不变性,这避免了大量创建字符串的成本。