logo

تنسيق إخراج جافا

في بعض الأحيان نريد أن تتم طباعة مخرجات البرنامج بتنسيق معين. في لغة البرمجة C، يكون ذلك ممكنًا باستخدام الدالة printf(). في هذا القسم، سنناقش تنسيقات الإخراج المختلفة.

دعونا نناقش كيف يمكننا تنسيق الإخراج في جافا.

هناك طريقتان يمكن استخدامهما لتنسيق الإخراج في Java:

المساواة بين السلاسل في جافا
  • باستخدام طريقة printf ().
  • باستخدام طريقة التنسيق ().

تنسيق الإخراج باستخدام طريقة System.out.printf()

تنفيذ هذه الطريقة سهل جدًا لأنها تشبه الدالة printf() في برمجة C.

FormattedOutput1.java

 public class FormattedOutput1 { public static void main( String args[ ] ) { // printing the string value on the console String str = ' JavaTpoint ' ; System.out.printf( ' 
 Printing the String value : %s 
 ', str ) ; // printing the integer value on the console int x = 512 ; System.out.printf( ' 
 Printing the integer value : x = %d 
 ', x ) ; // printing the decimal value on the console float f = 5.25412368f ; System.out.printf( ' 
 Printing the decimal value : %f 
 ', f ) ; // this formatting is used to specify the width un to which the digits can extend System.out.printf( ' 
 Formatting the output to specific width : n = %.4f 
 ', f ) ; // this formatting will print it up to 2 decimal places System.out.printf( ' 
 Formatted the output with precision : PI = %.2f 
 ', f ) ; // here number is formatted from right margin and occupies a width of 20 characters System.out.printf( ' 
 Formatted to right margin : n = %20.4f 
 ', f ) ; } } 

انتاج:

 Printing the String value : JavaTpoint Printing the integer value : x = 512 Printing the decimal value : 5.254124 Formatting the output to specific width : n = 5.2541 Formatted the output with precision : PI = 5.25 Formatted to right margin : n = 5.2541 

System.out.format()‎ يعادل printf() ويمكن استخدامه أيضًا.

هناك نقطة مهمة يجب ملاحظتها وهي أن System.out.print() وSystem.out.println() يأخذان وسيطة واحدة، ولكن يمكن للأسلوب printf() قبول وسائط متعددة.

تحويل السلسلة إلى int في Java

التنسيق باستخدام فئة DecimalFormat:

يتم استخدام DecimalFormat لتنسيق الأرقام العشرية.

FormattedOutput2.java

 import java.text.DecimalFormat ; // definition of the class public class FormattedOutput2 { public static void main( String args[ ] ) { double x = 123.4567 ; // printing the number System.out.printf( ' 
 The number is : %f 
 ', x ) ; // printing only the numeric part of the floating number DecimalFormat ft = new DecimalFormat( ' #### ' ) ; System.out.println( ' 
 Without fraction part the number is : ' + ft.format( x ) ) ; // printing the number only upto 2 decimal places ft = new DecimalFormat( ' #.## ' ) ; System.out.println( ' 
 Formatted number with the specified precision is = ' + ft.format( x ) ) ; // automatically appends zero to the rightmost part of decimal, instead of #, we use digit 0 ft = new DecimalFormat( ' #.000000 ' ) ; System.out.println( ' 
 Appending the zeroes to the right of the number = ' + ft.format( x ) ) ; // automatically appends zero to the leftmost of decimal number instead of #, we use digit 0 ft = new DecimalFormat( ' 00000.00 ' ) ; System.out.println( ' 
 Appending the zeroes to the left of the number = '+ ft.format( x ) ) ; // formatting money in dollars double income = 550000.789 ; ft = new DecimalFormat( ' $###,###.## ' ) ; System.out.println( ' 
 Your Formatted Income in Dollars : ' + ft.format( income ) ) ; } } 

انتاج:

 The number is : 123.456700 Without fraction part the number is : 123 Formatted number with the specified precision is = 123.46 Appending the zeroes to the right of the number = 123.456700 Appending the zeroes to the left of the number = 00123.46 Your Formatted Income in Dollars : 0,000.79 

محددات تنسيق سلسلة جافا

نقدم هنا جدولًا لمحددات التنسيق التي تدعمها سلسلة Java.

جافا mvc
محدد التنسيق نوع البيانات انتاج |
٪أ النقطة العائمة (باستثناء BigDecima l) إرجاع إخراج سداسي عشري لرقم الفاصلة العائمة.
٪ب أي نوع 'صحيح' إذا لم يكن خاليًا، 'خطأ' إذا كان خاليًا
شخصية حرف يونيكود
٪د عدد صحيح (بما في ذلك البايت، القصير، int، الطويل، bigint) عدد صحيح عشري
٪إنها النقطة العائمة رقم عشري في التدوين العلمي
٪F النقطة العائمة عدد عشري
النقطة العائمة رقم عشري، ربما بالترميز العلمي حسب الدقة والقيمة.
أي نوع سلسلة سداسية عشرية للقيمة من طريقة hashCode ().
٪ن لا أحد فاصل الخط الخاص بالمنصة.
%O عدد صحيح (بما في ذلك البايت، القصير، int، الطويل، bigint) رقم ثماني
٪س أي نوع قيمة السلسلة
%t التاريخ/الوقت (بما في ذلك الطويل والتقويم والتاريخ والملحق الزمني) %t هي البادئة لتحويلات التاريخ/الوقت. هناك حاجة إلى المزيد من علامات التنسيق بعد ذلك. انظر تحويل التاريخ/الوقت أدناه.
%x عدد صحيح (بما في ذلك البايت، القصير، int، الطويل، bigint) سلسلة سداسية.