הצהרות תווית
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Java של Coddy. שיעור 35 מתוך 59.
פקודות תווית ב-Java מאפשרות לך לסמן נקודות מסוימות בקוד שלך ולשלוט בזרימת התוכנית באמצעות פקודות break ו-continue עם התוויות האלה. תוויות שימושיות במיוחד כשעובדים עם לולאות מקוננות.
צור לולאה מקוננת עם תווית:
outer: for(int i = 0; i < 3; i++) {
for(int j = 0; j < 3; j++) {
if(i * j == 4) {
break outer;
}
}
}השתמשו ב־continue עם תווית:
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);
}
}אתגר
קלצרו מתודה בשם findNumber שמקבלת שלושה ארגומנטים:
- מערך דו־ממדי של מספרים שלמים (
grid) - מספר שלם (
target) שיש למצוא - ערך בוליאני (
breakEarly) שקובע אם החיפוש צריך להיעצר לאחר מציאת ההופעה הראשונה. המתודה צריכה להשתמש בלולאה מתויגת כדי לחפש את מספר היעד ולהדפיס כל מיקום שבו הוא נמצא. אם breakEarly הוא true, עליה לעצור לאחר מציאת ההופעה הראשונה. יש להדפיס כל איבר שנמצא בפורמט:Found at: rowIndex,colIndex
נסו בעצמכם
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) {
// כתבו כאן את הקוד שלכם
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// קראו מחרוזת JSON המייצגת מערך דו־ממדי
String gridString = scanner.nextLine();
// קראו את מספר היעד
int target = Integer.parseInt(scanner.nextLine());
// קראו את הדגל breakEarly
boolean breakEarly = Boolean.parseBoolean(scanner.nextLine());
Type gridType = new TypeToken<int[][]>(){}.getType();
int[][] grid = new Gson().fromJson(gridString, gridType);
findNumber(grid, target, breakEarly);
}
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה לוגיקה וזרימת תוכנית
1מערכים רב־ממדיים
יסודות מערכים דו־ממדייםגישה לאיברים במערך דו־ממדילולאות מקוננות עם מערכים דו־ממדייםסיכום — מערכים דו־ממדייםחיבור וחיסור מטריצותמערכים מדורגיםמערכים תלת־ממדיים ומעבר להםתבניות נפוצות במערכים דו־ממדייםסיכום — כל מה שצריך לדעת על מערכיםתרגלו בעצמכם: קומפיילר Java אונליין