Menu
Coddy logo textTech

Beschriftete Anweisungen

Teil des Abschnitts Logik & Ablauf der Java-Journey von Coddy — Lektion 35 von 59.

Label-Anweisungen in Java ermöglichen es, spezifische Punkte in Ihrem Code zu markieren und den Ablauf mit break und continue-Anweisungen unter Verwendung dieser Labels zu steuern. Labels sind besonders nützlich beim Arbeiten mit verschachtelten Schleifen.

Erstellen Sie eine verschachtelte Schleife mit einem Label:

outer: for(int i = 0; i < 3; i++) {
   for(int j = 0; j < 3; j++) {
       if(i * j == 4) {
           break outer;
       }
   }
}

continue mit einem Label verwenden:

firstLoop: for(int i = 0; i < 3; i++) {
   for(int j = 0; j < 3; j++) {
       if(j == 1) {
           continue firstLoop;
       }
       System.out.println(i + "," + j);
   }
}
challenge icon

Aufgabe

Einfach

Erstellen Sie eine Methode namens findNumber, die drei Argumente annimmt:

  1. Ein zweidimensionales Array von Ganzzahlen (grid)
  2. Eine Ganzzahl (target) zum Finden
  3. Ein boolescher Wert (breakEarly), der bestimmt, ob die Suche nach dem Finden des ersten Vorkommnisses gestoppt werden soll Die Methode sollte eine beschriftete Schleife verwenden, um nach der Zielzahl zu suchen und jede Position auszugeben, an der sie gefunden wird. Wenn breakEarly true ist, sollte sie nach dem Finden des ersten Vorkommnisses stoppen. Jedes gefundene Element sollte im Format ausgegeben werden: Found at: rowIndex,colIndex

Spickzettel

Label-Anweisungen in Java ermöglichen es, spezifische Punkte in Ihrem Code zu markieren und den Kontrollfluss mit break- und continue-Anweisungen unter Verwendung dieser Labels zu steuern.

Erstellen Sie eine verschachtelte Schleife mit einem Label:

outer: for(int i = 0; i < 3; i++) {
   for(int j = 0; j < 3; j++) {
       if(i * j == 4) {
           break outer;
       }
   }
}

Verwenden Sie continue mit einem Label:

firstLoop: for(int i = 0; i < 3; i++) {
   for(int j = 0; j < 3; j++) {
       if(j == 1) {
           continue firstLoop;
       }
       System.out.println(i + "," + j);
   }
}

Probier es selbst

import java.util.Scanner;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;

public class Main {
    public static void findNumber(int[][] grid, int target, boolean breakEarly) {
        // Schreibe deinen Code hier
    }
    
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        // JSON-String einlesen, der ein 2D-Array darstellt
        String gridString = scanner.nextLine();
        // Die Zielzahl einlesen
        int target = Integer.parseInt(scanner.nextLine());
        // Das breakEarly-Flag einlesen
        boolean breakEarly = Boolean.parseBoolean(scanner.nextLine());
        
        Type gridType = new TypeToken<int[][]>(){}.getType();
        int[][] grid = new Gson().fromJson(gridString, gridType);
        
        findNumber(grid, target, breakEarly);
    }
}
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Logik & Ablauf