رقمهای یک عدد در Java
int count = 40; دو رقم را یک عدد صحیح نگه میدارد، و System.out.println(count) عدد 40 را مینویسد. صفحه یک خط است. آن 4 شمار حرفها نیست. آن 0 هم عدد جداگانهای کنارش نیست.
رقمهایی که مینویسید یک عددند
Mint.java را باز کنید. نام فایل Mint.java میماند، چون public class Mint هنوز نام فایل است. این صفحه نام فایل را عوض نمیکند و public class Mint را هم عوض نمیکند. اگر خط String plant هنوز آنجاست، پاکش کنید. plant.length را پاک کنید، charAt را پاک کنید، و هر خطی را که بعد از نقطه پرسش میپرسد پاک کنید. هر خط import، هر خط reader، و هر خط nextLine را هم پاک کنید. فایلی که نگه میدارید import ندارد، Scanner ندارد، nextLine ندارد، plant ندارد، و نقطه ندارد. یک import که در فایل مانده و به کار نرفته، بهتنهایی باعث نمیشود javac خطا بدهد، و 40 را هم نمینویسد. رقمها را فقط خط نویسندهای مینویسد که از نام استفاده میکند.
درون main، خط نگهداری این است: int count = 40;. int کلمهٔ جور است. میگوید این نام عدد صحیح نگه میدارد. count نام است و با c کوچک شروع میشود. علامت = رقمها را در این نام نگه میدارد. رقمها 4 است و بعد 0، و میانشان هیچ چیز نیست: نه فاصله، نه ویرگول، نه نقطه، نه گیومه. نقطهویرگول خط را تمام میکند. این خط عدد را نگه میدارد. صفحه را نمینویسد. نگه داشتن هنوز نوشتن نیست. تا پایان همین خط صفحه خالی میماند. این دو رقم یک عددند، چهل که به شکل 40 نوشته شده، نه کلمهٔ چهل، و نه یک 4 که بعداً یک 0 جدا پشت سرش نوشته شود.
آن 4 در صفحهٔ شمار حرف جواب بود. plant.length() به leaf نگاه میکرد و خط نویسنده 4 را نشان میداد، در حالی که حرفها leaf میماندند. آن 4 رقمهایی نبود که روی خط نگهداری تایپ شده باشند. این صفحه آن پرسش را کنار میگذارد. اینجا plantی برای شمردن نیست. 4 داخل 40 رقمی است که خودتان تایپ کردهاید، و 0 کنارش رقم دیگر همان عدد است. اگر صفحه leaf را نشان دهد، یا leaf و بعد 4 را، خطهای قبلی هنوز در فایل هستند. آنها را پاک کنید تا تنها مقداری که نگه داشته شده 40 باشد.
خط نویسنده همان نام لخت است: System.out.println(count);. بدون گیومه و بدون نقطه. Java نام count را میخواند، عدد صحیحی را که آن نام نگه داشته مینویسد، و خط را تمام میکند. برای فایلی که نگه میدارید آن عدد 40 است. حرفهای خود نام، یعنی c و o و u و n و t، روی صفحه نیستند. int روی صفحه نیست. System روی صفحه نیست. نقطهویرگول روی صفحه نیست. رقمهای 4 و 0 روی صفحه هستند، در یک خط، به شکل 40. فایل را ذخیره کنید.
فایلی که نگه میدارید
این را با نام Mint.java ذخیره کنید. این همان فایلی است که این صفحه نگه میدارد. یک کلمهٔ جور، int. یک نام، count. یک عدد صحیح، 40، دو رقم، بدون گیومه، بدون نقطه، بدون فاصله میان رقمها، و بدون علامت منفی. یک خط نویسنده، و آن خط از نام لخت استفاده میکند.
public class Mint {
public static void main(String[] args) {
int count = 40;
System.out.println(count);
}
}
فایل را از بالا بخوانید. public class Mint نام فایل را مشخص میکند. صفحه را نمینویسد. public static void main(String[] args) جایی است که Java شروع میکند. کلمهٔ String روی همان خط main هنوز خط نگهداری نیست. در فایلی که نگه میدارید خط String plant نیست. int count = 40; دو رقم را نگه میدارد. چیزی نمینویسد. System.out.println(count); عدد 40 را مینویسد و خط را تمام میکند. روی صفحه یک خط است. گیومه نیست. خط دوم نیست.
آنچه صفحه نشان میدهد
در پوشهای که این Mint.java در آن است، javac Mint.java را بنویسید. وقتی فایل درست باشد، این فرمان هیچ خطی نمینویسد. دو رقم بدون فاصله میانشان باعث نمیشود javac خطی بنویسد، و باعث نمیشود javac خطا بدهد. بعد java Mint را بنویسید. بعد از java پسوند .java را ننویسید. همین دو فرمان را در Windows و در macOS مینویسید. این صفحه آن علامتی را که پوسته پیش از فرمان نشان میدهد نقل نمیکند. برنامه 40 را مینویسد. منتظر نمیماند که چیزی تایپ کنید. رقمها از قبل داخل فایل بودند. اگر java Mint منتظر ماند، هنوز nextLine داخل فایل است. آن خط را پاک کنید و int count = 40; و همان یک خط نویسنده را نگه دارید. برنامه بعد از خط نویسنده تمام میشود.
صفحه 40 را نشان میدهد. یک خط. بدون گیومه. اگر صفحه count را نشان دهد، خط نویسنده دور نام گیومه دارد: System.out.println("count");. آن گیومهها حرفهای c و o و u و n و t را مشخص میکنند، پس 40ِ نگه داشته نوشته نمیشود. اگر صفحه 4 را نشان دهد، خط نگهداری int count = 4; است، یک رقم، یا فایل هنوز صفحهٔ شمار حرف است و خط نویسنده plant.length() است. فایلی که نگه میدارید 40 دارد، دو رقم. اگر صفحه 4 را نشان دهد و در خط بعد 0 را، دو خط نویسنده هست، یا دو عدد. فایلی که نگه میدارید یک خط نویسنده دارد و یک عدد. اگر صفحه 400 را نشان دهد، یک 0 اضافه در خط نگهداری است. اگر صفحه leaf را نشان دهد، plant هنوز در فایل است. اگر صفحه mint را نشان دهد، هنوز روی فایل قدیمیتری هستید. اگر صفحه forty را نشان دهد، خط نویسنده کلمهٔ forty را میان گیومه دارد. فایلی که نگه میدارید رقم مینویسد، نه آن کلمه را. برای صفحهای که خط غلط نشان میدهد Java را دوباره نصب نمیکنید.
فاصله میان رقمها یک عدد نیست. int count = 4 0; میان 4 و 0 شکاف دارد. javac خطا مینویسد. ساکت نمیماند. صفحهای برای خواندن نیست، چون تا وقتی javac خطا مینویسد java Mint را اجرا نمیکنید. واژههای دقیق آن خطا لازم نیست. شکاف را پاک کنید تا خط دوباره int count = 40; شود. ویرگول در این صفحه علامت هزارگان نیست. int count = 4,000; عدد 4000 نیست. javac خطا مینویسد. فایلی که نگه میدارید ویرگول ندارد. نقطه هنوز برای int عدد صحیح نیست. int count = 40.0; باعث میشود javac خطا بنویسد، همان جور ناهماهنگی که نقطه در عددی کوچکتر هم دارد. فایلی که نگه میدارید 40 دارد، بدون نقطه و بدون رقمی بعد از نقطه.
گیومه دور رقمها یعنی حرف، نه عدد صحیح. int count = "40"; از یک نام int میخواهد دو رقمحرف را نگه دارد. javac خطا مینویسد. آن حرفها را به عدد 40 تبدیل نمیکند. اگر کلمهٔ جور int است، گیومهها را پاک کنید. System.out.println("40"); اصلاً بدون خط int هم 40 را مینویسد، چون گیومهها نویسههای 4 و 0 را نگه داشتهاند. صفحه میتواند یکسان به نظر برسد. فایل اینطور نیست. فایلی که نگه میدارید int دارد، و 40 را بدون گیومه دارد. وقتی این صفحه را میسنجید، دنبال کلمهٔ جور بگردید و دنبال نبودن گیومه. جور را فقط از روی صفحه قضاوت نکنید.
نام باید پیش از خطی که از آن استفاده میکند وجود داشته باشد. اگر System.out.println(count); بالای int count = 40; نوشته شده باشد، javac خطا مینویسد. خط نویسنده نام count را پیش از آنکه count وجود داشته باشد به کار میبرد. خط نگهداری را بالای خط نویسنده ببرید. این همان ترتیب صفحهٔ قبلی عدد صحیح است، و همان ترتیب plant در صفحههای حرف. فایلی که نگه میدارید از قبل همین ترتیب را دارد. برای همان نام، int را بار دوم ننویسید. int count = 40; که زیر خطی بنشیند که count را قبلاً ساخته، خطای دیگری است. javac خطا مینویسد و ساکت نمیماند. نام یک بار ساخته میشود. فایلی که نگه میدارید یک خط نگهداری دارد.
int count = forty; با forty مثل یک نام رفتار میکند. این فایل نامی به اسم forty ندارد. javac خطا مینویسد. عدد همان رقمهای 40 است، نه آن کلمه. رقمها را برگردانید. int count; بدون = 40، و بعدش خط نویسنده، هم باعث میشود javac خطا بنویسد. نام به صورت یک جور وجود میداشت، ولی هنوز عددی نگه نداشته بود. روی خط ساختن، = 40 را بگذارید، همانطور که فایلی که نگه میدارید دارد.
علامت منفی جزو همان رقمهاست
علامتی که به رقمها چسبیده باشد جزو همان یک عدد است. علامت، نویسهٔ - است و لازم نیست میان آن و رقم اول فاصله باشد. int count = -4; یک عدد صحیح نگه میدارد. روی این خط عدد دومی نیست. این صفحه 4 را از عدد دیگری کم نمیکند. علامت جمع نیست، و عدد دومی هم نگه داشته نشده که با این یکی جمع شود. خط نویسنده هنوز System.out.println(count); است. صفحه -4 را نشان میدهد. یک خط. علامت روی صفحه است، چسبیده به رقم. نام count روی صفحه نیست.
این فایل دوم است. فایلی که نگه میدارید این نیست. فایلی که نگه میدارید 40 را نگه میدارد، بدون علامت منفی، و صفحهاش 40 است. وقتی میخواهید علامت را ببینید این فایل دوم را با نام Mint.java ذخیره کنید، بعد int count = 40; را برگردانید.
public class Mint {
public static void main(String[] args) {
int count = -4;
System.out.println(count);
}
}
javac Mint.java را بنویسید. فایل درست است، پس javac هیچ خطی نمینویسد. علامت منفی چسبیده به یک رقم باعث نمیشود javac خطا بدهد. بعد java Mint را بنویسید. صفحه -4 را نشان میدهد. یک خط. بدون گیومه. اگر صفحه 4 را نشان دهد، علامت در خط نگهداری نیست. اگر صفحه 40 را نشان دهد، هنوز روی فایلی هستید که نگه میدارید؛ همان فایل درست برای برگشتن است، ولی این بررسی نیست. اگر صفحه -40 را نشان دهد، خط نگهداری هم علامت را دارد و هم هر دو رقم را. آن هم یک عدد است، علامت به اضافهٔ 40، و فایل دوم نیست. فایل دوم فقط -4 است. فاصله میان علامت و رقم، یعنی int count = - 4;، هنوز همان یک عدد است. javac هیچ خطی نمینویسد، و صفحه هنوز -4 است، با علامت چسبیده به رقم. فاصلهٔ داخل فایل روی صفحه فاصله نمیشود، و عدد دوم هم نیست. فایلی که نگه میدارید از این علامت استفاده نمیکند. بعد از آنکه -4 را دیدید، فایل نگه داشته را برگردانید: int count = 40; و یک System.out.println(count);.
صفری که اول نوشته شود عدد دیگری است
0 که پیش از رقمهای دیگر نوشته شود «همان رقمها با یک 0 اضافه» نیست. int count = 040; خطی است که javac میپذیرد، پس javac هیچ خطی نمینویسد. بعد java Mint عدد 32 را مینویسد. صفحه 40 نیست، و 040 هم نیست. Java عدد صحیحی را که با 0 شروع شود هشتتا هشتتا میخواند، نه دهتا دهتا، آنطور که 40 را میخوانید. 4 داخل 040 یعنی چهار تا هشت، که میشود 32، و 0 آخر چیزی اضافه نمیکند. لازم نیست هر بار این بازچینی را روی کاغذ انجام دهید. واقعیت مفید خود صفحه است: 32، نه 40. پیش از آنکه صفحه را ترک کنید، 0 اول را پاک کنید تا خط نگهداری دوباره int count = 40; شود. 040 را در فایلی که نگه میدارید نگذارید.
یک 0 تنها یعنی عدد صفر، و مجاز است. int count = 0; عدد 0 را نگه میدارد. System.out.println(count); عدد 0 را مینویسد. javac هیچ خطی نمینویسد. java Mint عدد 0 را مینویسد و تمام میشود. منتظر نمیماند. صفحهٔ خالی یعنی خط نویسنده نیست. رقم 0 روی صفحه همان عددی است که نگه داشتهاید، نه یک خط خالی. آن 0 تنها با 0ی که جلوی رقمهای دیگر نوشته شود یکی نیست. 0 با همان یک رقم شروع میشود و با همان تمام میشود. 40 با 4 شروع میشود. 040 با 0 شروع میشود و بعد رقمهای دیگری دارد، و صفحهٔ همان خط 32 است.
0 اول که بعدش 8 یا 9 باشد در آن گروهبندی جا نمیگیرد. int count = 08; باعث میشود javac خطا بنویسد. int count = 09; هم همین کار را میکند. این خطها راه ساکتی برای نگه داشتن هشت یا ۹ نیستند. 0 اول را پاک کنید. هشت به صورت عدد صحیح int count = 8; است، و صفحه 8 را نشان میدهد. در این صفحه به 08 نیاز ندارید. فایلی که نگه میدارید 40 است و با 4 شروع میشود، پس این خطا در آن فایل نیست. خطا فقط برای خطی است که با 0 شروع شود و بعدش رقمی نوشته شود که در گروهبندی جا ندارد.
خطها و صفحهها اینجا کنار هم نشستهاند. فایلی که نگه میدارید ردیف اول است. ردیفهای دیگر بررسیاند. فایل اضافهای نیستند که ذخیره بمانند.
📊 خط نگهداری و صفحه
| خط نگهداری | صفحه |
|---|---|
| int count = 40; | 40 |
| int count = -4; | -4 |
| int count = 0; | 0 |
| int count = 040; | 32 |
جدول را کنار یک اجرا بخوانید، نه بهجای اجرا. برای 40، javac هیچ خطی نمینویسد و java Mint عدد 40 را مینویسد. برای -4، javac هیچ خطی نمینویسد و java Mint عدد -4 را مینویسد. برای 0، javac هیچ خطی نمینویسد و java Mint عدد 0 را مینویسد. برای 040، javac هیچ خطی نمینویسد و java Mint عدد 32 را مینویسد. بعد از هر بررسی، int count = 40; را برگردانید. صفحهٔ نگه داشته 40 است، یک خط، بدون علامت، بدون 0 اول.
حالا میتوانید یک عدد صحیح را به شکل رقم داخل فایل بنویسید و همان رقمها را روی صفحه ببینید. int count = 40; عدد 40 را نگه میدارد. System.out.println(count); عدد 40 را مینویسد و خط را تمام میکند. دو رقم یک عددند، نه شمار حرف و نه دو خط. int count = -4; عدد -4 را مینویسد، و علامت جزو همان یک عدد است. int count = 0; عدد 0 را مینویسد. int count = 040; میگذارد javac ساکت بماند و باعث میشود java Mint عدد 32 بنویسد، پس 0 اول همان عددی نیست که میخواستید. فاصله یا ویرگول میان رقمها باعث میشود javac خطا بنویسد. صفحهٔ بعد این رقمها را کنار میگذارد. مقداری نگه میدارد که عدد صحیح نیست و یک خط حرف هم نیست.
صفحه همان عددی است که نگه داشتهاید
فایلی که نگه میدارید 40 را مینویسد. نام روی خط نویسنده count است، و count روی صفحه نیست. در آن فایل گیومه نیست. یک println یک خط است. علامت منفی، وقتی فایل دوم را به کار میبرید، جزو عدد همان خط است. 0 که اول نوشته شود عدد دیگری است، و در فایلی که نگه میدارید جا ندارد.
🧠 دانش خود را بیازمایید
دانش خود را بیازمایید
خود را با این آزمون تعاملی به چالش بکشید و ببینید موضوع را چقدر خوب درک کردهاید
📝 دستورالعملها
- هر سوال را با دقت بخوانید
- بهترین پاسخ را برای هر سوال انتخاب کنید
- میتوانید آزمون را هر چند بار که میخواهید تکرار کنید
- پیشرفت شما در بالا نمایش داده میشود