Finally-Block
Teil des Abschnitts Logik & Ablauf der Java-Journey von Coddy. Lektion 41 von 59.
Der finally-Block enthält Code, der nach try-catch-Blöcken ausgeführt wird, unabhängig davon, ob eine Ausnahme auftritt oder nicht. Er wird häufig für Bereinigungsvorgänge wie das Schließen von Dateien oder Datenbankverbindungen verwendet.
Hier ist die grundlegende Struktur eines Try-Catch-Finally-Blocks:
try {
// Code, der eine Ausnahme auslösen könnte
} catch (ExceptionType e) {
// Code zur Behandlung der Ausnahme
} finally {
// Code, der immer ausgeführt wird
}Sehen wir uns ein Beispiel mit einem Zähler an:
int counter = 0;
try {
int result = 10 / 0;
// Dies wird eine Ausnahme werfen
counter = 1;
} catch (ArithmeticException e) {
counter = 2;
} finally {
counter = 3;
// Dies wird immer ausgeführt
}Nach der Ausführung des obigen Codes enthält counter:
3
Aufgabe
EinfachErstelle eine Methode namens processNumber, die zwei Argumente entgegennimmt:
- Einen String (
number), der in eine Ganzzahl umgewandelt werden soll - Einen booleschen Wert (
shouldThrow), der bestimmt, ob eine Ausnahme ausgelöst werden soll
Die Methode sollte:
- Eine Ergebnisvariable mit dem Wert 0 initialisieren
- Im try-Block:
- Wenn shouldThrow wahr ist, 10 durch 0 teilen
- Andernfalls den Zahlen-String in eine Ganzzahl umwandeln und in result speichern
- Im catch-Block: result auf -1 setzen
- Im finally-Block: 100 zu result addieren
- result als String zurückgeben
Probier es selbst
import java.util.Scanner;
public class Main {
public static String processNumber(String number, boolean shouldThrow) {
// Schreibe deinen Code hier
}
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));
}
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Logik & Ablauf
1Mehrdimensionale Arrays
Grundlagen der 2D-ArraysZugriff auf 2D-Array-ElementeVerschachtelte Schleifen mit 2D-ArraysZusammenfassung - 2D-ArraysMatrixaddition & SubtraktionJagged Arrays3D-Arrays und darüber hinausGängige 2D-Array-MusterZusammenfassung - Alles über Arrays2HashMap Teil 1
Was ist eine HashMap?Eine HashMap deklarierenWerte abrufenPrüfen, ob ein Schlüssel existiertWörterbücher modifizierenZusammenfassung - HashMap3HashMap Teil 2
HashMap-MethodenMit keySet() iterierenMit entrySet() iterierenVerschachtelte HashMapZusammenfassung - Lager verwaltenZusammenfassung - HashMap-Operationen6Erweiterter Steuerungsfluss
Beschriftete AnweisungenSwitch-AusdruckMusterabgleichSchutzklauselnZusammenfassung - Steuerungsfluss9Projekt - Einzigartiger Wortzähler
Texteingabe und SpeicherungWortverarbeitungÜbe selbstständig: Online-Java-Compiler