如何分割逗号分隔多个字符串并推入数组。
例如,
string a = "TN,KA,KL";
string b = "AP,UP,JK";
Run Code Online (Sandbox Code Playgroud)
结果数组应为:
string[] resultArray = new string[] {"TN", "KA", "KL", "AP", "UP", "JK"};
Run Code Online (Sandbox Code Playgroud)
我是C#的新手。帮我解决这个问题。
Cai*_*ard 10
如果要使用LINQ:
var resultArray = a.Split(',').Concat(b.Split(',')).ToArray();
Run Code Online (Sandbox Code Playgroud)
或不使用LINQ,您可以将concat作为字符串进行处理,然后使用以下3行之一进行拆分:
var resultArray = $"{a},{b}".Split(','); //c#6+ String interpolation-formatted style
var resultArray = string.Format("{0},{1}", a, b).Split(','); //c# any version, formatted style
var resultArray = (a+","+b).Split(','); //concat style
Run Code Online (Sandbox Code Playgroud)
或者,您可以将它们加载到列表中,然后将其转换为数组:
var l = new List<string>(a.Split(','));
l.AddRange(b.Split(','));
var resultArray = l.ToArray();
Run Code Online (Sandbox Code Playgroud)
这绝不是一个详尽的清单,但是它详细说明了使用LINQ(如果您有多种不同的可枚举对象,则很简单)而没有LINQ(如果它确实是一对短字符串,并且您希望易于阅读)的最简单方法。代码段),并带有一个集合(如果您想将其传递并从其他位置填充)
如果这种情况确实如您在这里所示,有几个短字符串,那么我将使用字符串concat然后拆分。字符串类对“将3个字符串连接在一起”操作具有特定的优化,因此它应具有合理的性能,较短的代码且易于理解。如果要执行数百万个这样的操作,则拆分为两个数组可能会更快,请制作一个与a和b长度都一样长的第三个数组,然后将a复制到开始位置,并将b复制到偏移a 。长度
| 归档时间: |
|
| 查看次数: |
61 次 |
| 最近记录: |