如果我有一个看起来像这样的简单类:
public string Param1 { get; set; }
public string Param2 { get; set; }
public SimpleClass (string a, string b) { Param1 = a; Param2 = b; }
从另一个类返回的字符串数组列表:
var list = new List<string[]> {new[] {"first", "second"}, new[] {"third", "fourth"}};
是否有更有效的方法使用C#结束List<SimpleClass>
而不执行以下操作:
var list1 = new List<SimpleClass>();
foreach (var i in list)
{
var data = new SimpleClass(i[0], i[1]);
list1.Add(data);
}
答案 0 :(得分:8)
您可以使用Linq:
method3()
答案 1 :(得分:3)
正如@rualmar所说,你可以使用linq。但是你也可以重载隐式运算符。 例如
public static implicit operator SimpleClass(string[] arr)
{
return new SimpleClass(arr[0], arr[1]);
}
然后你可以写这个
var list = new List<SimpleClass> { new[] { "first", "second" }, new[] { "third", "fourth" } };