Como ler 2 ints de uma linha JAVA?

Ex da linha
7 2
3 4
Eu quero ler os inteiros e colocar em int.
> Scanner sc = new Scanner(System.in);

    int lineNumbers = 0;
    while(sc.hasNextLine()) {
    			lineNumber++;
    			int num1 = sc.nextInt();
    			int num2 = sc.nextInt();
    		}

Transforme a linha capturada no scanner em String.

Tendo uma variavel String em mãos, dos números da linha você pode fazer um split e transformar num array, este array armazenará os números.
No caso vamos dar Split em ocorrência de ESPAÇO " ".

String string = sc.nextLine();
String[] numeros = string.split(" ");
   
 //Agora você pode pegar os numeros das linhas e atribuir a valores
    int num1 = Integer.parseInt(numeros[0]);
    int num2 =  Integer.parseInt(numeros[1]);
1 curtida

obrigado!!
mas não dá para fazer com o nextInt??

@GabrielA2

Se você souber a quantidade exata de valores por linha, pode fazer algo assim.

Att, canal Academia dos Devs.

1 curtida

Dá sim, desde que você saiba a quantidade de números como citado pelo amigo @academiadosdevs. Porém isso na minha visão deixa seu código muito limitado, pois você vai limitar seu código a quantidades de inteiros pré-definidas por você no código, ou seja se uma pessoa quiser colocar 3 números ao invés de 2, seu programa só ira ler os 2 números. Enquanto desta forma que apresentei você pode ter infinitos números.

1 curtida

obrigado

obrigado!