Menu
Coddy logo textTech

Try-Catch Básico

Parte da seção Lógica e Fluxo do Journey de Java da Coddy — lição 40 de 59.

Blocos try-catch em Java são usados para lidar com exceções (erros) que podem ocorrer durante a execução do programa. O código que pode lançar uma exceção vai no bloco try, e o código de tratamento de erro vai no bloco catch.

Aqui está a estrutura básica de um bloco try-catch:

try {
   // Código que pode lançar uma exceção
} catch (ExceptionType e) {
   // Código para lidar com a exceção
}

Vamos ver em ação com Integer.parseInt(), que converte uma String para um inteiro:

String text = "abc";
try {
   int number = Integer.parseInt(text);
   System.out.println(number);
} catch (NumberFormatException e) {
   System.out.println("Error: Not a valid number");
}

Após executar o código acima, a saída é:

Error: Not a valid number

challenge icon

Desafio

Fácil

Crie um método chamado divideNumbers que recebe três argumentos:

  1. Uma String (num1) representando o primeiro número
  2. Uma String (num2) representando o segundo número
  3. Um inteiro (index) representando um índice de array

O método deve:

  1. Criar um array de tamanho 2
  2. Armazenar o valor inteiro parseado de num1 dividido pelo valor inteiro parseado de num2 no índice fornecido
  3. Retornar o valor no índice fornecido
  4. Lidar com todas as exceções possíveis com mensagens de erro apropriadas

As mensagens de retorno devem ser:

  • Para NumberFormatException: "Error: Invalid number format"
  • Para ArithmeticException: "Error: Division by zero"
  • Para ArrayIndexOutOfBoundsException: "Error: Invalid array index"
  • Para operação bem-sucedida: retornar o resultado como uma string

Folha de consulta

Blocos try-catch lidam com exceções (erros) que podem ocorrer durante a execução do programa. O código que pode lançar uma exceção vai no bloco try, e o código de tratamento de erro vai no bloco catch.

Estrutura básica:

try {
   // Code that might throw an exception
} catch (ExceptionType e) {
   // Code to handle the exception
}

Exemplo com Integer.parseInt():

String text = "abc";
try {
   int number = Integer.parseInt(text);
   System.out.println(number);
} catch (NumberFormatException e) {
   System.out.println("Error: Not a valid number");
}

Tipos comuns de exceções:

  • NumberFormatException - Formato de número inválido
  • ArithmeticException - Divisão por zero
  • ArrayIndexOutOfBoundsException - Índice de array inválido

Experimente você mesmo

import java.util.Scanner;

public class Main {
    public static String divideNumbers(String num1, String num2, int index) {
        // Escreva seu código aqui
    }
    
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String num1 = scanner.nextLine();
        String num2 = scanner.nextLine();
        int index = Integer.parseInt(scanner.nextLine());
        
        System.out.println(divideNumbers(num1, num2, index));
    }
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Lógica e Fluxo