我有这个简单的代码:
public static void Main(String[] args)
{
Data data = new Data { List = { "1", "2", "3", "4" } };
foreach (var str in data.List)
Console.WriteLine(str);
Console.ReadLine();
}
public class Data
{
private List<String> _List = new List<String>();
public List<String> List
{
get { return _List; }
}
public Data() { }
}
Run Code Online (Sandbox Code Playgroud)
所以当我创建一个Data类时:
Data data = new Data { List = { "1", "2", "3", "4" } };
Run Code Online (Sandbox Code Playgroud)
该列表中填充了字符串"1","2","3","4",即使它没有set.
为什么会这样?
c# properties object-initializers getter-setter collection-initializer