مشخصات مقاله
-
3073
-
0.0
-
6570
-
0
-
0
آموزش Formatted Strings
رشته های متن با استفاده از فرمان printf می توانند فرمت شده و خروجی شوند. فرمان printf مجموعه ای از کاراکترها با عنوان format specification (مشخصات فرمت) را درک می کند. سپس این فرمان یک رشته از متن را گرفته و و آن را قالب بندی می کند، براساس مشخصات قالب تایید شده. به عنوان مثال فرض کنید که می خواهیم پنجره ی Output متنی را در ستون های مرتب نمایش دهد، مانند تصویر زیر:
اولین ستون از سمت چپ و دومین ستون از سمت راست مرتب شده اند. کد مربوط به Exam_Name و Exam_Grade مانند زیر می باشد:
String heading1 = "Exam_Name"; String heading2 = "Exam_Grade";
System.out.printf( "%-15s %15s %n", heading1, heading2);
برای به دست آوردن ستون مرتب شده از سمت چپ نیاز به یک نماد درصد، یک نماد منها، تعداد کاراکترها و سپس حرف "s" ( s کوچک) دارید. بنابراین ''%-15s'' به معنای 15 کاراکتر مرتب شده از سمت چپ می باشد.
برای به دست آوردن یک ستون مرتب شده از سمت راست همان ترتیب کاراکترها استفاده می شوند، به جز علامت منها.
برای به دست آوردن یک newline نماد %n استفاده می شود. دقت داشته باشید که کاراکترها با علامت های نقل قول دوتایی احاطه شده اند.
پس از یک کاما، متنی را تایپ می کنید که قصد قالب بندی آن را دارید. اولین کاما در کد فوق مشخصات قالب ( format specification ) را از متنی که قرار است قالب بندی شود، جدا می سازد.
در اینجا جدول هایی از گزینه های مختلف را مشاهده می کنید:
اگر بخواهید اعداد را قالب بندی کنید یا می توانید از کاراکتر "d" استفاده کنید یا، برای اعداد شناور ممیزی، از کاراکتر "f".
قالب بندی اعداد صحیح:
قالب بندی اعداد ممیزی شناور:
در اینجا مثال هایی از کدهای مربوط به String، عدد صحیح و قالب بندی ممیز شناور (floating point) را مشاهده می کنید. آنها را برای خود امتحان کنید.
مانند فوق، اما اعداد 10 مکان را با فضاهایی در سمت چپ، اشغال می کنند.
یک عدد ممیزی شناور را قالب بندی کرده و یک کاراکتر newline اضافه کنید. عدد ممیزی دارای شش مکان اعشاری خواهد بود.
درست مانند فوق، اما تنها دو قسمت اعشاری را قالب بندی خواهد کرد.
و سرانجام، در اینجا جدولی را از شروع این بخش قالب بندی مشاهده می کنید.
در اینجا نیز کد مربوط به قالب بندی فوق را مشاهده می کنید:
یک تمدین با قالب بندی داشته باشید و چگونگی به دست آوردن آن را مشاهده کنید. اگر پیغام خطا دریافت کردید، ممکن است قالب بندی نوع "s" را با قالب بندی نوع "d" اشتباه گرفته باشید.