Necesito declarar una matriz de cadenas vacía y estoy usando este código
string[] arr = new String[0]();
Pero me sale el error "nombre esperado del método".
Que pasa
Necesito declarar una matriz de cadenas vacía y estoy usando este código
string[] arr = new String[0]();
Pero me sale el error "nombre esperado del método".
Que pasa
Respuestas:
Prueba esto
string[] arr = new string[] {};
c# Array.Empty<string>()
Su sintaxis es incorrecta:
string[] arr = new string[]{};
o
string[] arr = new string[0];
Los constructores de matrices son diferentes. Aquí hay algunas formas de hacer una matriz de cadenas vacía:
var arr = new string[0];
var arr = new string[]{};
var arr = Enumerable.Empty<string>().ToArray()
(lo siento, en el móvil)
Esas cosas rizadas a veces son difíciles de recordar, por eso hay una excelente documentación :
// Declare a single-dimensional array
int[] array1 = new int[5];
int
con string
si le gusta.
Su sintaxis no es válida.
string[] arr = new string[5];
Eso creará arr
una matriz de cadenas referenciada, donde se encuentran todos los elementos de esta matriz null
. (Dado que las cadenas son tipos de referencia )
Esta matriz contiene los elementos de arr[0]
a arr[4]
. El new
operador se utiliza para crear la matriz e inicializar los elementos de la matriz a sus valores predeterminados. En este ejemplo, todos los elementos de la matriz se inicializan en null
.
Si debe crear una matriz vacía, puede hacer esto:
string[] arr = new string[0];
Si no conoce el tamaño, también puede usarlo List<string>
como
var valStrings = new List<string>();
// do stuff...
string[] arrStrings = valStrings.ToArray();
Lo siguiente debería funcionar bien.
string[] arr = new string[] {""};