Como puedo convertir un array de tipo string a un array de tipo int? (De texto a entero)

publicado por: Anonymous

Estoy trabajando con Arrays en c# y necesio convertir lo que tengo en mi array de tipo texto a numeros, para ordenarlos de mayor a manor

        string numeros;
        Console.WriteLine("DIGITE NUMEROS SEPARADOS POR COMA (,): ");
        numeros = Console.ReadLine();
        string[] arreglo = numeros.Split(',');
        for(int i=0; i<arreglo.Length; i++)
        {
            Console.Write(arreglo[i]+"-");

        }
        Console.ReadKey();

solución

Puede usar varias maneras para conseguirlo:

Método 1: Usando bucle for

Creamos un arreglo nuevo de tipo int. Y luego, usando el bucle for, vamos a pasar a través de arreglo, convertir cada elemento a un string, y guárdalo en el arreglo nuevo.

int[] arregloInt = new int[arreglo.Length];
for (int i = 0; i < arreglo.Length; i++)
{
    arregloInt[i] = Convert.ToInt32(arreglo[i]);
}

Método 2: Usando LINQ

O podemos usar la consulta LINQ para convertir el arreglo de string a un arreglo de int. Este código de abajo devuelve el mismo resultado que con el código del método 1.

int[] arregloInt2 = arreglo.Select(x => Convert.ToInt32(x)).ToArray();

Si quiere imprimir el arreglo de int:

for (int i = 0; i < arregloInt.Length; i++)
{
    Console.WriteLine(arregloInt[i].ToString());
}
Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *