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);
使用一点 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)
由于字符串的不变性,这避免了大量创建字符串的成本。