我需要声明一个空字符串数组,我正在使用此代码
string[] arr = new String[0]();
但我得到“方法名称预期”错误。
怎么了?
答案 0 :(得分:207)
试试这个
string[] arr = new string[] {};
答案 1 :(得分:60)
您的语法错误:
string[] arr = new string[]{};
或
string[] arr = new string[0];
答案 2 :(得分:10)
如果您使用的是.net 4.6,则可以使用一些新的语法:
using System; // To pick up definition of the Array class.
var myArray = Array.Empty<string>();
答案 3 :(得分:8)
你可以试试这个
string[] arr = {};
答案 4 :(得分:8)
Arrays的构造函数不同。以下是一些制作空字符串数组的方法:
var arr = new string[0];
var arr = new string[]{};
var arr = Enumerable.Empty<string>().ToArray()
(抱歉,在手机上)
答案 5 :(得分:1)
您的语法无效。
string[] arr = new string[5];
这将创建arr
,一个引用的字符串数组,其中此数组的所有元素都是null
。 (因为字符串是引用类型)
此数组包含arr[0]
到arr[4]
的元素。 new
运算符用于创建数组并将数组元素初始化为其默认值。在此示例中,所有数组元素都初始化为null
。
答案 6 :(得分:1)
那些卷曲的东西有时难以记住,这就是为什么有优秀的documentation:
// Declare a single-dimensional array
int[] array1 = new int[5];
答案 7 :(得分:0)
如果必须创建一个空数组,则可以执行以下操作:
string[] arr = new string[0];
如果您不了解尺寸,那么您也可以使用List<string>
以及
var valStrings = new List<string>();
// do stuff...
string[] arrStrings = valStrings.ToArray();
答案 8 :(得分:-1)
以下内容应该可以正常使用。
string[] arr = new string[] {""};