Menu
CoddyTech

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

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

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

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

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

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

  • %s: يُدرج سلسلة نصية.
  • %d: يُدرج عددًا عشريًا (عددًا صحيحًا).
  • %f: يُدرج عددًا بفاصلة عائمة.
  • %b: يُدرج قيمة منطقية.
  • %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

التحدي

سهل

أنشئ دالة باسم createFormattedString تأخذ المعاملات التالية:

  1. سلسلة نصية productName.
  2. عددًا صحيحًا quantity.
  3. عددًا عشريًا unitPrice.

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

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اختبر نفسك

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

جميع دروس الأساسيات

تدرّب بنفسك: مترجم Java عبر الإنترنت