大小未知的字符串数组

sv8*_*rik 41 c# arrays

如何在一个字符串数组中,你不知道c#.NET中数组大小的位置?

String[] array = new String[]; // this does not work
Run Code Online (Sandbox Code Playgroud)

Sta*_* R. 75

您需要使用数组的具体原因是什么?如果你不知道手头的尺寸,你可能想要使用List<String>

List<String> list = new List<String>();

list.Add("Hello");
list.Add("world");
list.Add("!");

Console.WriteLine(list[2]);
Run Code Online (Sandbox Code Playgroud)

会给你一个输出

!
Run Code Online (Sandbox Code Playgroud)

MSDN - 列表(T)以获取更多信息


pma*_*lee 16

实例化时,不必指定数组的大小.

您仍然可以声明该数组并在以后实例化它.例如:

string[] myArray;

...

myArray = new string[size];
Run Code Online (Sandbox Code Playgroud)


sep*_*p2k 7

没有大小,您无法创建数组.你需要使用一个列表.


And*_*are 6

正如其他人提到的,您可以使用 a List<String>(我同意这将是更好的选择)。如果您需要String[](例如传递给需要它的现有方法),您始终可以从列表(它是List<T>'s内部数组的副本)中检索一个数组,如下所示:

String[] s = yourListOfString.ToArray();
Run Code Online (Sandbox Code Playgroud)


Rav*_*ndu 5

你可以像下面这样声明一个空数组

String[] arr = new String[]{}; // declare an empty array
String[] arr2 = {"A", "B"}; // declare and assign values to an array
arr = arr2; // assign valued array to empty array
Run Code Online (Sandbox Code Playgroud)

你不能像下面这样将值分配给上面的空数组

arr[0] = "A"; // you can't do this
Run Code Online (Sandbox Code Playgroud)