זריקת חריגות
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Java של Coddy. שיעור 42 מתוך 59.
מילת המפתח throw ב-Java מאפשרת לך לזרוק חריגה באופן מפורש. הנה המבנה הבסיסי:
throw new ExceptionType("Error message");הרכיבים הם:
throw: מילת מפתח לזריקת חריגהnew ExceptionType: יוצר חריגה חדשה (כמו IllegalArgumentException)"Error message": מתאר מה השתבש
בואו נראה את זה בפעולה:
int age = -5;
if (age < 0) {
throw new IllegalArgumentException("Age cannot be negative");
}לאחר ביצוע הקוד שלמעלה, התוכנית זורקת:
IllegalArgumentException: Age cannot be negative
אתגר
קלצרו מתודה בשם validateAge שמקבלת שני ארגומנטים:
- מספר שלם (
age) לאימות - ערך בוליאני (
strict) שקובע את כללי האימות
המתודה צריכה לזרוק חריגות בהתאם לכללים הבאים:
- אם הגיל שלילי: זרקו IllegalArgumentException עם ההודעה "Age cannot be negative"
- אם הגיל גדול מ-150: זרקו IllegalArgumentException עם ההודעה "Age cannot be greater than 150"
- אם strict הוא true והגיל הוא 0: זרקו IllegalArgumentException עם ההודעה "Age cannot be zero in strict mode"
- אם לא נזרקת חריגה: החזירו את הגיל כמחרוזת
נסו בעצמכם
import java.util.Scanner;
public class Main {
public static String validateAge(int age, boolean strict) {
// כתבו כאן את הקוד שלכם
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int age = Integer.parseInt(scanner.nextLine());
boolean strict = Boolean.parseBoolean(scanner.nextLine());
try {
System.out.println(validateAge(age, strict));
} catch (IllegalArgumentException e) {
System.out.println(e.getMessage());
}
}
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה לוגיקה וזרימת תוכנית
1מערכים רב־ממדיים
יסודות מערכים דו־ממדייםגישה לאיברים במערך דו־ממדילולאות מקוננות עם מערכים דו־ממדייםסיכום — מערכים דו־ממדייםחיבור וחיסור מטריצותמערכים מדורגיםמערכים תלת־ממדיים ומעבר להםתבניות נפוצות במערכים דו־ממדייםסיכום — כל מה שצריך לדעת על מערכיםתרגלו בעצמכם: קומפיילר Java אונליין