Menu
Coddy logo textTech

Bloque Finally

Parte de la sección Lógica y Flujo del Journey de Java de Coddy. Lección 41 de 59.

El bloque finally contiene código que se ejecutará después de los bloques try-catch, tanto si se produce una excepción como si no. Se utiliza habitualmente para operaciones de limpieza, como cerrar archivos o conexiones de bases de datos.

Esta es la estructura básica de un bloque try-catch-finally:

try {
   // Código que podría lanzar una excepción
} catch (ExceptionType e) {
   // Código para manejar la excepción
} finally {
   // Código que siempre se ejecuta
}

Veamos un ejemplo con un contador:

int counter = 0;
try {
   int result = 10 / 0;
   // Esto lanzará una excepción
   counter = 1;
} catch (ArithmeticException e) {
   counter = 2;
} finally {
   counter = 3;
   // Esto siempre se ejecutará
}

Después de ejecutar el código anterior, counter contiene:

3

challenge icon

Desafío

Fácil

Crea un método llamado processNumber que acepte dos argumentos:

  1. Un String (number) para convertirlo en un entero
  2. Un booleano (shouldThrow) que determina si se debe lanzar una excepción

El método debe:

  1. Inicializar una variable de resultado en 0
  2. En el bloque try:
    • Si shouldThrow es true, dividir 10 entre 0
    • De lo contrario, convertir la cadena number en un entero y almacenarlo en result
  3. En el bloque catch: establecer result en -1
  4. En el bloque finally: sumar 100 a result
  5. Devolver result como una cadena

Pruébalo tú mismo

import java.util.Scanner;

public class Main {
    public static String processNumber(String number, boolean shouldThrow) {
        // Escribe tu código aquí
    }
    
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String number = scanner.nextLine();
        boolean shouldThrow = Boolean.parseBoolean(scanner.nextLine());
        
        System.out.println(processNumber(number, shouldThrow));
    }
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Lógica y Flujo

Practica por tu cuenta: Compilador de Java online