Etiketli İfadeler
Coddy'nin Java Journey'sinin Mantık & Akış bölümünün bir parçası — ders 35 / 59.
Java'daki etiket ifadeleri, kodunuzdaki belirli noktaları işaretlemenize ve bu etiketlerle birlikte break ve continue ifadelerini kullanarak akışı kontrol etmenize olanak tanır. Etiketler, özellikle iç içe geçmiş döngülerle çalışırken kullanışlıdır.
Etiketli bir iç içe döngü oluşturun:
outer: for(int i = 0; i < 3; i++) {
for(int j = 0; j < 3; j++) {
if(i * j == 4) {
break outer;
}
}
}Bir etiket ile continue kullanın:
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);
}
}Görev
KolayÜç argüman alan findNumber adında bir metot oluşturun:
- Tam sayılardan oluşan 2 boyutlu bir dizi (
grid) - Bulunacak bir tam sayı (
target) - İlk eşleşme bulunduktan sonra aramanın durup durmayacağını belirleyen bir boolean (
breakEarly). Metot, hedef sayıyı aramak için etiketli bir döngü kullanmalı ve bulunduğu her konumu yazdırmalıdır. Eğer breakEarly true ise, ilk eşleşmeyi bulduktan sonra durmalıdır. Bulunan her öğe şu formatta yazdırılmalıdır:Found at: rowIndex,colIndex
Kendin dene
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) {
// Kodunuzu buraya yazın
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 2D diziyi temsil eden JSON dizesini oku
String gridString = scanner.nextLine();
// Hedef sayıyı oku
int target = Integer.parseInt(scanner.nextLine());
// breakEarly bayrağını oku
boolean breakEarly = Boolean.parseBoolean(scanner.nextLine());
Type gridType = new TypeToken<int[][]>(){}.getType();
int[][] grid = new Gson().fromJson(gridString, gridType);
findNumber(grid, target, breakEarly);
}
}Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Mantık & Akış bölümündeki tüm dersler
1Çok Boyutlu Diziler
2D Diziler Temelleri2D Dizi Elemanlarına Erişim2D Dizilerle İç İçe DöngülerÖzet - 2D DizilerMatris Toplama ve ÇıkarmaJagged Diziler3D Diziler ve ÖtesiYaygın 2D Dizi DesenleriÖzet - Diziler Hakkında Her Şey2HashMap Bölüm 1
HashMap Nedir?HashMap TanımlamaDeğerlere ErişimAnahtarın Varlığını Kontrol EtmeSözlükleri DeğiştirmeÖzet - HashMap3HashMap Bölüm 2
HashMap YöntemlerikeySet() ile YinelemeentrySet() ile Yinelemeİç İçe HashMapÖzet - Depo YönetimiÖzet - HashMap İşlemleri6İleri Akış Kontrolü
Etiketli İfadelerSwitch İfadesiDesen EşleştirmeKoruyucu Yan CümlelerÖzet - Akış Kontrolü9Proje - Benzersiz Kelime Sayacı
Metin Girişi ve DepolamaKelime İşleme