ביטוי switch
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Java של Coddy. שיעור 36 מתוך 59.
ביטוי switch הוא תכונה שמאפשרת לך לכתוב משפטי switch תמציתיים יותר ולהחזיר ערכים ישירות. בואו נראה איך זה עובד.
צרו ביטוי switch בסיסי שמחזיר ערך:
int number = 1;
String message = switch(number) {
case 1 -> "One";
case 2 -> "Two";
default -> "Other";
};לאחר הרצת הקוד שלמעלה, המשתנה message מכיל:
"One"
אפשר גם לטפל בכמה מקרים יחד:
int day = 2;
String type = switch(day) {
case 1, 2, 3, 4, 5 -> "Weekday";
case 6, 7 -> "Weekend";
default -> "Invalid day";
};לאחר ביצוע הקוד שלעיל, המשתנה type מכיל:
"Weekday"
אתגר
קלצרו מתודה בשם getDayType שמקבלת שני ארגומנטים:
- מספר שלם (
day) שמייצג יום בשבוע (1-7) - ערך בוליאני (
abbreviated) שקובע את פורמט הערך המוחזר
המתודה צריכה להשתמש בביטוי switch כדי להחזיר את סוג היום:
- עבור ימים 1-5 (שני עד שישי): החזירו "WORKDAY" אם אין קיצור, או "WKD" אם יש קיצור
- עבור ימים 6-7 (שבת וראשון): החזירו "WEEKEND" אם אין קיצור, או "WKND" אם יש קיצור
- עבור כל מספר אחר: החזירו "INVALID" אם אין קיצור, או "INV" אם יש קיצור
נסו בעצמכם
import java.util.Scanner;
public class Main {
public static String getDayType(int day, boolean abbreviated) {
// כתבו כאן את הקוד שלכם
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int day = Integer.parseInt(scanner.nextLine());
boolean abbreviated = Boolean.parseBoolean(scanner.nextLine());
System.out.println(getDayType(day, abbreviated));
}
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה לוגיקה וזרימת תוכנית
1מערכים רב־ממדיים
יסודות מערכים דו־ממדייםגישה לאיברים במערך דו־ממדילולאות מקוננות עם מערכים דו־ממדייםסיכום — מערכים דו־ממדייםחיבור וחיסור מטריצותמערכים מדורגיםמערכים תלת־ממדיים ומעבר להםתבניות נפוצות במערכים דו־ממדייםסיכום — כל מה שצריך לדעת על מערכיםתרגלו בעצמכם: קומפיילר Java אונליין