Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

تنسيق السلاسل النصية

جزء من قسم Fundamentals في رحلة Java على Coddy — الدرس 69 من 73.

في لغة Java، تُعد String.format() طريقة قوية تُستخدم لإنشاء سلاسل نصية منسقة. فهي تتيح لك دمج النصوص مع المتغيرات بطريقة سهلة القراءة وقابلة للتخصيص. تستخدم هذه الطريقة محددات التنسيق (format specifiers) لتحديد كيفية إدراج المتغيرات في السلسلة النصية.

الصيغة الأساسية لـ String.format() هي:

String formattedString = String.format("format_string", arg1, arg2, ...);
  • format_string: سلسلة نصية تحتوي على نص ومحددات تنسيق.
  • arg1, arg2, ...: المتغيرات التي سيتم إدراجها في format_string.

إليك بعض محددات التنسيق الشائعة:

  • %s: يدرج سلسلة نصية.
  • %d: يدرج عدداً عشرياً (صحيحاً).
  • %f: يدرج عدداً بفاصلة عائمة.
  • %b: لإدراج قيمة منطقية (boolean).
  • %c: لإدراج حرف.
  • %n: لإدراج محرف سطر جديد.

يمكنك أيضاً التحكم في التنسيق بشكل أكبر:

  • %.2f: ينسق رقماً بفاصلة عائمة مع منزلتين عشريتين.
  • %10s: يدرج سلسلة نصية، محاذية لليمين ضمن حقل مكون من 10 أحرف.
  • %-10s: يدرج سلسلة نصية، محاذية لليسار ضمن حقل مكون من 10 أحرف.
  • %03d: يدرج عدداً صحيحاً، مكملاً بأصفار بادئة حتى يصل عرضه إلى 3 أرقام.

إليك مثالاً:

String name = "Alice";
int age = 30;
double price = 19.99;

String formatted = String.format("Name: %s, Age: %d, Price: %.2f", name, age, price);
System.out.println(formatted);
// المخرجات: Name: Alice, Age: 30, Price: 19.99

في هذا المثال، يتم استبدال %s بـ name، و %d بـ age، و %.2f بـ price، منسقاً إلى منزلتين عشريتين.

challenge icon

التحدي

سهل

قم بإنشاء طريقة (method) باسم createFormattedString تأخذ الوسائط التالية:

  1. سلسلة نصية productName.
  2. عدد صحيح quantity.
  3. عدد عشري من نوع unitPrice (double).

يجب أن تعيد الطريقة سلسلة نصية منسقة تجمع هذه القيم بالتنسيق التالي:

Product: [productName], Quantity: [quantity], Unit Price: [unitPrice]

قم بتنسيق unitPrice إلى خمس خانات عشرية، و quantity بخانة عشرية واحدة (قم بتحويلها إلى double).

على سبيل المثال، إذا كان productName هو "laptop"، و quantity هو 3، و unitPrice هو 1299.9999، يجب أن تعيد الطريقة:

Product: laptop, Quantity: 3.0, Unit Price: 1299.99990

جرّب بنفسك

import java.util.Scanner;

public class Main {
    public static String createFormattedString(String productName, int quantity, double unitPrice) {
        // اكتب كودك هنا
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String product = scanner.nextLine();
        int qty = scanner.nextInt();
        double price = scanner.nextDouble();
        String formattedString = createFormattedString(product, qty, price);
        System.out.println(formattedString);
    }
}
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس Fundamentals