Menu
CoddyTech

עיצוב מחרוזות מתקדם

חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Java של Coddy. שיעור 49 מתוך 59.

עיצוב מחרוזות ב-Java מאפשר לך ליצור מחרוזות מעוצבות באמצעות מצייני עיצוב. הנפוצים ביותר הם %s עבור מחרוזות, %d עבור מספרים שלמים, ו-%.2f עבור מספרים עשרוניים.

עיצוב מחרוזת עם כמה ערכים:

String name = "John";
int age = 25;
String text = String.format("Name: %s, Age: %d", name, age);

לאחר הרצת הקוד שלמעלה, text מכיל:

Name: John, Age: 25

עיצוב מספרים עשרוניים בדיוק מוגדר:

double price = 19.99;
String formatted = String.format("Price: $%.2f", price);

לאחר הרצת הקוד שלמעלה, formatted מכיל:

Price: $19.99

challenge icon

אתגר

קל

צרו מתודה בשם formatData שמקבלת ארבעה ארגומנטים:

  1. מחרוזת (name) עבור שם המוצר
  2. מספר מסוג double (price) עבור מחיר המוצר
  3. מספר שלם (quantity) עבור הכמות
  4. מחרוזת (format) עבור סוג הפורמט של הפלט

המתודה צריכה לעצב את הנתונים לפי הסוגים הבאים:

  • "basic": return "ITEM: {name}, PRICE: ${price}"
  • "detailed": return "PRODUCT: {name}\nPRICE: ${price}\nQUANTITY: {quantity}"
  • "total": return "TOTAL FOR {quantity}x {name}: ${total}" (total = price * quantity)

יש לעצב את כל המחירים בדיוק עם 2 ספרות אחרי הנקודה העשרונית.

הודעת ההחזרה:

  • אם קלט כלשהו הוא null או הפורמט אינו תקין: return "Invalid input"

נסו בעצמכם

import java.util.Scanner;

public class Main {
    public static String formatData(String name, double price, int quantity, String format) {
        // כתבו את הקוד שלכם כאן
    }
    
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String name = scanner.nextLine();
        double price = Double.parseDouble(scanner.nextLine());
        int quantity = Integer.parseInt(scanner.nextLine());
        String format = scanner.nextLine();
        
        if (name.equals("null")) name = null;
        if (format.equals("null")) format = null;
        
        System.out.println(formatData(name, price, quantity, format));
    }
}
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה לוגיקה וזרימת תוכנית

תרגלו בעצמכם: קומפיילר Java אונליין