خاصية "Output Numbers" في جافا تشير إلى كيفية عرض الأرقام بتنسيقات مختلفة باستخدام طرق الإخراج المتوفرة في اللغة. جافا توفر آليات متنوعة للتحكم في شكل الأرقام عند طباعتها أو تحويلها إلى نصوص. سأشرح لك أهم هذه الآليات مع الأمثلة:
1. استخدام System.out.print()
و System.out.println()
:
هذه هي أبسط طرق الإخراج في جافا. println()
تطبع القيمة مع سطر جديد، بينما print()
تطبع القيمة فقط.
- مثال بسيط:
int x = 10;double pi = 3.14159;
System.out.println(x); // يطبع 10System.out.println(pi); // يطبع 3.14159
2. تنسيق الأرقام باستخدام String.format()
:
تُستخدم هذه الطريقة لتحويل الأرقام إلى نصوص بتنسيق مُحدد. تستخدم مُحددات تنسيق (Format Specifiers) للتحكم في شكل الرقم.
-
أهم مُحددات التنسيق:
%d
: عدد صحيح (integer).%f
: عدد عشري (floating-point).%e
أو%E
: عدد عشري بالصيغة العلمية (scientific notation).%g
أو%G
: يستخدم أقصر تمثيل بين%f
و%e
.%x
أو%X
: عدد صحيح بالنظام الست عشري (hexadecimal).%o
: عدد صحيح بالنظام الثماني (octal).
-
أمثلة:
int num = 123;double price = 45.678;
String formattedNum = String.format("العدد: %d", num); // الناتج: العدد: 123String formattedPrice = String.format("السعر: %.2f", price); // الناتج: السعر: 45.68 (تقريب لرقمين عشريين)String scientificNotation = String.format("العدد بالصيغة العلمية: %e", 1234567.89); // الناتج: العدد بالصيغة العلمية: 1.234568e+06
-
التحكم في العرض:
- يمكن تحديد عدد الخانات الكلية وعدد الخانات بعد العلامة العشرية باستخدام أرقام بين
%
والحرف المُحدد للتنسيق. مثال:%10.2f
يعني عرض العدد العشري في 10 خانات مع رقمين بعد العلامة العشرية. - يمكن استخدام أعلام (flags) للتحكم في المحاذاة وإضافة علامات زائد أو فراغات. مثال:
%+d
لعرض علامة الزائد للأعداد الموجبة،%05d
لإضافة أصفار على اليسار حتى يصبح العدد مكون من 5 خانات.
- يمكن تحديد عدد الخانات الكلية وعدد الخانات بعد العلامة العشرية باستخدام أرقام بين
3. استخدام DecimalFormat
:
هذه الطريقة توفر تحكمًا دقيقًا في تنسيق الأرقام، خاصةً للأرقام العشرية والعملات.
- مثال:
import java.text.DecimalFormat;
double value = 1234.567;
DecimalFormat df = new DecimalFormat("#,###.00"); // تنسيق مع فاصلة آلاف ورقمين عشريينString formattedValue = df.format(value); // الناتج: 1,234.57
DecimalFormat currencyFormat = new DecimalFormat("$#,###.00"); // تنسيق عملةString formattedCurrency = currencyFormat.format(value); // الناتج: $1,234.57
4. استخدام NumberFormat
:
هذه فئة مجردة توفر تنسيقات للأرقام والعملات والنسب المئوية. يمكن استخدامها للحصول على تنسيقات مُعدة مسبقًا بناءً على الإعدادات المحلية.
- مثال:
import java.text.NumberFormat;import java.util.Locale;
double number = 0.75;
NumberFormat percentFormat = NumberFormat.getPercentInstance(Locale.US); String formattedPercent = percentFormat.format(number); // الناتج: 75%
باختصار، جافا توفر مجموعة واسعة من الأدوات لتنسيق الأرقام بشكل مناسب لاحتياجات التطبيق، سواء كنت تحتاج إلى تنسيق بسيط أو تحكم دقيق في شكل العرض. استخدام String.format()
و DecimalFormat
هما من أكثر الطرق شيوعًا وفعالية.