تاریخ در Java
یک روز تقویم را نگه دارید و چاپ کنید تا صفحه سال، ماه و روز را بهترتیب نشان دهد. در Stamp.java بنویسید import java.time.LocalDate;، کلاس عمومی Stamp را نگه دارید، بنویسید LocalDate day = LocalDate.of(2026, 3, 15); و day را چاپ کنید. با javac Stamp.java ترجمه کنید و java Stamp را اجرا کنید. صفحه باید 2026-03-15 نشان دهد. دموی دوم day.getYear()، day.getMonthValue() و day.getDayOfMonth() را چاپ میکند تا صفحه 2026، بعد 3، بعد 15 نشان دهد. Random را برای صفحهٔ بعد بگذارید — این درس یک روز تقویم ثابت است، نه عدد شانسی.
یک روز ثابت نگه دارید
صفحهٔ قالببندی تورفتگی و فاصلهٔ عملگرها را روی یک جمع مرتب کرد. این صفحه یک مقدار تقویم نگه میدارد. فایل Stamp.java را باز کنید. نام کلاس عمومی را Stamp نگه دارید. دموهای باقیماندهٔ جمع Yard اگر داستان تاریخ را دفن میکنند پاک کنید، فایلهای نامگذاری ticketCount، فایلهای فقطJavadoc مربوط به add، و هر Scanner صفحهکلید را هم پاک کنید. برنامه نباید منتظر تایپ بماند.
در بالای فایل import را اضافه کنید:
import java.time.LocalDate;
داخل Stamp.main یک روز با سال، ماه و روز ماه بسازید. شمارهٔ ماه از 1 برای ژانویه شروع میشود. مارس 3 است. بنویسید:
LocalDate day = LocalDate.of(2026, 3, 15);
System.out.println(day);
LocalDate.of سه عدد صحیح به همان ترتیب میخواهد. اول سال است. دوم ماه از 1 تا 12. سوم روز ماه است. این دمو ۱۵ مارس ۲۰۲۶ را قفل میکند تا هر اجرا همان سطر را چاپ کند. در این صفحه از ساعت «امروز» را نمیپرسید. روز ثابت صفحهٔ کوئیز و صفحهٔ اجرا را همتراز نگه میدارد.
import java.time.LocalDate;
public class Stamp {
public static void main(String[] args) {
LocalDate day = LocalDate.of(2026, 3, 15);
System.out.println(day);
}
}
از پوشهای که Stamp.java را دارد javac Stamp.java را اجرا کنید. وقتی پرانتز، آکولاد و نقطهویرگول جور باشند، javac سطر خودش را نمینویسد. بعد java Stamp را اجرا کنید — نه java Stamp.java. پسوند .java را از فرمان اجرا بردارید. یک کلاس عمومی در فایل نگه دارید تا نام با Stamp یکی باشد.
صفحه 2026-03-15 نشان میدهد. یکبار اجرا را قدمبهقدم ببینید. Java از Stamp.main شروع میکند. انتساب یک LocalDate برای سال 2026، ماه 3، روز 15 میسازد. چاپ آن روز را بهشکل سال-ماه-روز با خطتیره مینویسد. صفرهای 03 ماه مارس را دو رقمی روی صفحه علامت میزنند. روز همان 15 میماند.
وقتی صفحه را میبینید قاعده را بگویید: LocalDate را import کنید، LocalDate.of را با سال بعد ماه بعد روز صدا بزنید، مقدار را چاپ کنید، سطر ISO را تأیید کنید. در این صفحه Random نسازید. Random منتظر درس بعد است. ماه را اینجا صفرمبنا حساب نکنید — 3 یعنی مارس.
اگر هنوز 12 از فایل قالببندی Yard میبینید، به فایل آموزش تاریخ بروید و دوباره java Stamp را اجرا کنید. اگر javac بگوید LocalDate پیدا نمیشود، سطر import بالای Stamp.java را چک کنید.
سال، ماه و روز را بخوانید
چاپ کل روز مفید است. خواندن هر بخش وقتی فقط عددها را میخواهید مفید است. همان مقدار LocalDate را نگه دارید. سه getter را صدا بزنید و هر نتیجه را در سطر خودش چاپ کنید.
System.out.println(day.getYear());
System.out.println(day.getMonthValue());
System.out.println(day.getDayOfMonth());
getYear سال را بهصورت int برمیگرداند. getMonthValue ماه را از 1 تا 12 برمیگرداند. getDayOfMonth روز داخل همان ماه را برمیگرداند. برای این روز ثابت سه چاپ 2026، بعد 3، بعد 15 هستند.
import java.time.LocalDate;
public class Stamp {
public static void main(String[] args) {
LocalDate day = LocalDate.of(2026, 3, 15);
System.out.println(day.getYear());
System.out.println(day.getMonthValue());
System.out.println(day.getDayOfMonth());
}
}
با javac Stamp.java ترجمه کنید و دوباره java Stamp را اجرا کنید. صفحه سه سطر نشان میدهد: 2026، 3 و 15. یکبار اجرا را قدمبهقدم ببینید. همان فراخوانی LocalDate.of روز را میسازد. getterها هر فیلد را میکشند. چیزی منتظر صفحهکلید نمیماند. چیزی عدد شانسی نمیاندازد.
دو دمو را دو شکل آموزش نگه دارید، نه یک فایل شلوغ اگر گیجتان میکند. اول چاپ ISO را ثابت کنید. بعد سه بخش را ثابت کنید. هر دو شکل همان import و همان فراخوانی of را دارند. شکل دوم فقط getterها را اضافه میکند.
اگر چاپ ماه وقتی منظورتان مارس است 2 نشان داد، احتمالاً از عادت ماه صفرمبنا را پاس دادهاید. در این صفحه مارس 3 است. آرگومانهای of را درست کنید، دوباره ترجمه کنید، و سه سطر را دوباره ببینید.
نقشهٔ کوتاه LocalDate
نقشهٔ کوتاه زیر نقشهٔ کوتاه همین صفحه است. اول LocalDate را import میکنید. بعد با LocalDate.of روز میسازید. بعد یا روز را چاپ میکنید یا بخشهایش را. حدس نزنید که ماه اینجا از صفر شروع میشود. import را پاک نکنید قبل از اینکه بفهمید چرا LocalDate ترجمه نمیشود.
📊 Beginner LocalDate habits on Stamp
| Habit | What you do |
|---|---|
| Import | Write import java.time.LocalDate; at the top |
| Build | Call LocalDate.of(year, month, day) with month 1–12 |
| Read | Print the day, or print getYear, getMonthValue, getDayOfMonth |
جدول را کنار فایل آموزش نگه دارید وقتی ویرایش میکنید. به import اشاره کنید، بعد به سطر of، بعد به چاپ. همان بازی جور کردن ایدهٔ کامل مبتدی در یک پاس است. صفحههای بعد میتوانند ساعت و منطقه اضافه کنند. این صفحه روی یک روز تقویم با عددهای روشن میماند.
اگر دموهای قالببندی هنوز نزدیکاند، بهعنوان تاریخچه نگه دارید. برای این درس فایل آموزش تاریخ را اجرا کنید تا صفحه یک سطر تقویم یا سه سطر بخش نشان دهد، نه جمع مرتب 12. اگر javac از کلاس عمومی تکراری شکایت کرد، فقط Stamp را عمومی نگه دارید.
تاریخ نه قالببندی است نه Random
قالببندی آکولاد و فاصله را چید تا خواننده جمع را ببیند. تاریخ یک مقدار تقویم نگه میدارد که چاپ و شکافته میشود. Random در صفحهٔ بعد عدد شانسی میسازد. امروز این سه کار را در یک فایل مبتدی قاطی نکنید.
نامهای نوع قدیمی کتابهای کهنه بیرون این درساند. اینجا به java.util.Date نیاز ندارید. به پرسش صفحهکلید برای تایپ روز نیاز ندارید. با LocalDate.of یک روز را قفل میکنید تا صفحه برای تمرین و کوئیز قابلپیشبینی باشد.
وقتی import نباشد، javac قبل از هر سطر صفحه شکست میخورد. وقتی ماه غلط باشد، سطر ISO و سطرهای بخش با روزی که منظورتان بود جور نمیشوند. آرگومانها را درست کنید، import را نگه دارید، و java Stamp را اجرا کنید تا سطرها با 2026-03-15 یا سه بخش 2026، 3، 15 جور شوند.
قبل از Random
میتوانید LocalDate را import کنید، LocalDate.of(2026, 3, 15) را نگه دارید، 2026-03-15 چاپ کنید، و بخشهای سال و ماه و روز را چاپ کنید. برای دموهای نگه داشتهشده Stamp.java را ترجمه کنید و java Stamp را اجرا کنید. مقدار تقویم ثابت ماند؛ getterها همان روز را نشان دادند. صفحهٔ بعد Random است، جایی که با عددهای شانسی در Java کار میکنید.
دموهای روز ثابت را برای جفت روشن تاریخبهعلاوهبخشها نگه دارید. وقتی LocalDate تمرین میکنید فایلهای قالببندی را از این صفحه دور نگه دارید. فایلهای Random را تا آن درس از این صفحه دور نگه دارید. این سه عادت ایستگاه کنترل قبل از ادامه است. وقتی سطر ISO یا سه بخش با فراخوانی of جور باشند، تاریخ کار این درس را کرده و برای موضوع بعدی دربارهٔ Random آمادهاید.
یک پاس آخر روی پوشه: یک Stamp عمومی، import حاضر، LocalDate.of(2026, 3, 15)، بدون انتظار صفحهکلید، بدون فراخوانی اجباری Random. یکبار دیگر روی دموی باز javac Stamp.java و java Stamp را اجرا کنید. اگر صفحه هنوز 2026-03-15 یا سه سطر بخش را نشان میدهد، شکل تاریخ محکم است و کورس میتواند در صفحهٔ بعد به Random برود. در هر خواندن یک عادت تقویم روشن نگه دارید تا هر پاس همان نقشه را بیاموزد.
🧠 دانش خود را بیازمایید
دانش خود را بیازمایید
خود را با این آزمون تعاملی به چالش بکشید و ببینید موضوع را چقدر خوب درک کردهاید
📝 دستورالعملها
- هر سوال را با دقت بخوانید
- بهترین پاسخ را برای هر سوال انتخاب کنید
- میتوانید آزمون را هر چند بار که میخواهید تکرار کنید
- پیشرفت شما در بالا نمایش داده میشود