C#声明空string数组

我需要声明一个空的string数组,我使用这个代码

string[] arr = new String[0](); 

但我得到“方法名称预期”的错误。

怎么了?

谢谢

尝试这个

 string[] arr = new string[] {}; 

你的语法是错误的:

 string[] arr = new string[]{}; 

要么

 string[] arr = new string[0]; 

你可以试试这个

 string[] arr = {}; 

数组的构造函数是不同的。 这里有一些方法来创build一个空string数组:

 var arr = new string[0]; var arr = new string[]{}; var arr = Enumerable.Empty<string>().ToArray() 

(对不起,在手机上)

如果您使用.net 4.6,则可以使用一些新的语法:

 var myArray = Array.Empty<string>(); 

如果你必须创build一个空数组,你可以这样做:

 string[] arr = new string[0]; 

如果你不知道大小,那么你也可以使用List<string>

 var valStrings = new List<string>(); // do stuff... string[] arrStrings = valStrings.ToArray(); 

那些curl的东西有时很难记住,这就是为什么有优秀的文档 :

 // Declare a single-dimensional array int[] array1 = new int[5]; 

你的语法是无效的。

 string[] arr = new string[5]; 

这将创build一个string数组引用arr和数组的所有元素都是null 。 (由于string是引用types

该数组包含从arr[0]arr[4]的元素。 new运算符用于创build数组,并将数组元素初始化为默认值。 在这个例子中,所有的数组元素都被初始化为null

Single-Dimensional Arrays (C# Programming Guide)