0Pricing
Java Academy · Aula

Analisando números da entrada

Converta texto em números

Analisando números da entrada é uma aula grátis de Java Academy no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Java Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Java Academy inclui 4 aulas no total.

As linhas são sempre cadeias de caracteres

readLine() sempre fornece uma String, mesmo quando o usuário digita 42. Para fazer cálculos, você precisa converter esse texto em um número.

Java fornece métodos auxiliares como Integer.parseInt e Double.parseDouble exatamente para isso.

Integer.parseInt

Integer.parseInt(String) converte um texto como "42" no valor int 42.

Depois de convertido, você pode somá-lo, multiplicá-lo ou compará-lo como qualquer número.

String text = "42";
int n = Integer.parseInt(text);
System.out.println(n + 1);

Um exemplo executável de conversão

Aqui está um programa completo e executável que converte uma cadeia de caracteres predefinida e duplica seu valor.

Ele não lê de System.in, portanto é executado imediatamente e exibe o resultado.

public class Main {
    public static void main(String[] args) {
        String text = "21";
        int n = Integer.parseInt(text);
        System.out.println("Doubled: " + (n * 2));
    }
}

Ler e depois converter

O padrão real é: ler uma linha e depois convertê-la. Este programa lê um número do console e exibe seu quadrado.

Como aguarda dados em System.in, ele não pode ser executado automaticamente aqui, mas esse é o padrão usado no dia a dia.

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br =
            new BufferedReader(new InputStreamReader(System.in));
        int n = Integer.parseInt(br.readLine());
        System.out.println("Square: " + (n * n));
    }
}

Remova espaços antes de converter

Espaços supérfluos interrompem a conversão. Integer.parseInt(" 42 ") lança um erro, mas Integer.parseInt(" 42 ".trim()) funciona.

É um bom hábito chamar trim() na linha antes de convertê-la.

String raw = "  7  ";
int n = Integer.parseInt(raw.trim());
System.out.println(n);

Convertendo números decimais

Para números decimais, use Double.parseDouble. Ele transforma um texto como "3.14" em um double.

Também existe Long.parseLong para números inteiros muito grandes que ultrapassam o limite de int.

public class Main {
    public static void main(String[] args) {
        double pi = Double.parseDouble("3.14");
        System.out.println(pi * 2);
    }
}

Vários números em uma linha

Muitas vezes, uma linha contém vários números separados por espaços, como "10 20 30". Use split(" ") para dividi-la em um vetor de elementos String.

Depois, converta cada elemento individualmente.

String[] parts = "10 20 30".split(" ");
int a = Integer.parseInt(parts[0]);
int b = Integer.parseInt(parts[1]);
System.out.println(a + b);

Somando números separados

Este programa executável divide uma linha e soma todos os números em um ciclo.

A cadeia de caracteres é predefinida para que o programa seja executado sem entrada, mas substitua-a por br.readLine() para usar o console de verdade.

public class Main {
    public static void main(String[] args) {
        String line = "5 8 2 10";
        String[] parts = line.split(" ");
        int sum = 0;
        for (String p : parts) {
            sum += Integer.parseInt(p);
        }
        System.out.println("Sum: " + sum);
    }
}

Entradas inválidas geram erros

Se o texto não for um número válido — como "hello" ou uma cadeia vazia — parseInt lançará uma NumberFormatException.

Você pode evitar isso usando try/catch, para que o programa não trave ao receber uma entrada inválida.

try {
    int n = Integer.parseInt("hello");
} catch (NumberFormatException e) {
    System.out.println("Not a number!");
}

Conversão segura em ação

Aqui está um programa executável que trata uma entrada inválida de forma adequada, em vez de travar.

O bloco catch exibe uma mensagem amigável quando o texto não pode ser transformado em um número.

public class Main {
    public static void main(String[] args) {
        String input = "12x";
        try {
            int n = Integer.parseInt(input);
            System.out.println(n);
        } catch (NumberFormatException e) {
            System.out.println("Invalid number: " + input);
        }
    }
}

Lista de verificação da conversão

Ao transformar entradas em números:

  • Integer.parseInt para números inteiros, Double.parseDouble para decimais.
  • Remova primeiro os espaços supérfluos com trim().
  • Use split(" ") para vários números em uma linha.
  • Envolva a conversão em try/catch para ter mais segurança.

Verificação rápida

Considere o que acontece quando a análise falha.

Recapitulação

Você aprendeu que as linhas de entrada são cadeias de caracteres, convertidas com Integer.parseInt ou Double.parseDouble. Você usou trim() e split(" ") e capturou NumberFormatException por segurança.

Próximo passo: fechar os seus fluxos da maneira correta.

Perguntas Frequentes

A aula “Analisando números da entrada” é grátis?

Sim — o texto completo de “Analisando números da entrada” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Java Academy, atualize para CoddyKit PRO. O curso de Java Academy inclui 4 aulas no total.

O que vou aprender em “Analisando números da entrada”?

Converta texto em números Você pratica Java Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Java Academy?

Nenhuma experiência prévia é necessária. Java Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.

Quanto tempo leva a aula “Analisando números da entrada”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Java Academy?

Sim. Cada aula de Java Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Por que usar BufferedReader
  2. Lendo linhas
  3. Analisando números da entrada
  4. Fechando fluxos com segurança
← Voltar para Java Academy