Tengo una entrada que consta de 2 números cualesquiera en una sola línea y puede haber un número ilimitado de líneas, ej.

        30 60
        81 22
        38 18

Quiero dividir cada línea en 2 fichas, la primera ficha es el número de la izquierda y la segunda ficha es el número de la derecha. ¿Qué tengo que hacer? Se agradece toda la ayuda.

-1
daniel p 10 feb. 2015 a las 07:14

3 respuestas

La mejor respuesta

Con escáner y System.in:

public class SplitTest
{
    public static void main (final String[] args)
    {
        try (Scanner in = new Scanner (System.in))
        {
            while (in.hasNext ())
            {
                System.out.println ("Part 1: " + in.nextDouble ());
                if (in.hasNext ())
                    System.out.println ("Part 2: " + in.nextDouble ());
            }
        }
        catch (final Throwable t)
        {
            t.printStackTrace ();
        }
    }
}
1
etherous 10 feb. 2015 a las 04:34
// For just splitting into two strings separated by whitespace
String numString = "30 60";
String[] split = numString.split("\\s+");

// For converting the strings to integers
int[] splitInt = new int[split.length];
for(int i = 0; i < split.length; i++)
    splitInt[i] = Integer.parseInt(split[i]);
0
ssh 10 feb. 2015 a las 04:20

Si la entrada siempre se configura así, eche un vistazo a String.split ()

0
Neverwork2123 10 feb. 2015 a las 04:17