English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
في هذا البرنامج، ستتعلم كيفية إضافة تاريخين باستخدام Calendar في Java.
بما أن بداية Java هي سنة 1970، فإن أي وقت يمثلته دالة Date لا يعمل. هذا يعني أن تاريخك سيبدأ من سنة 1970، وعند إضافة كلا من كائنين تاريخين، سيتم فقدان حوالي سنة 1970 من مجموعها. لذلك، نستخدم Calendar بدلاً من ذلك.
import java.util.Calendar; public class AddDates { public static void main(String[] args) { Calendar c1 = Calendar.getInstance(); Calendar c2 = Calendar.getInstance(); Calendar cTotal = (Calendar) c1.clone(); cTotal.add(Calendar.YEAR, c2.get(Calendar.YEAR)); cTotal.add(Calendar.MONTH, c2.get(Calendar.MONTH) + 1); // من البداية الشهر cTotal.add(Calendar.DATE, c2.get(Calendar.DATE)); cTotal.add(Calendar.HOUR_OF_DAY, c2.get(Calendar.HOUR_OF_DAY)); cTotal.add(Calendar.MINUTE, c2.get(Calendar.MINUTE)); cTotal.add(Calendar.SECOND, c2.get(Calendar.SECOND)); cTotal.add(Calendar.MILLISECOND, c2.get(Calendar.MILLISECOND)); System.out.format("%s + %s = %s", c1.getTime(), c2.getTime(), cTotal.getTime()); } }
عند تشغيل البرنامج، يتم إخراج:
Tue Aug 08 10:20:56 NPT 2017 + Tue Aug 08 10:20:56 NPT 2017 = Mon Apr 16 20:41:53 NPT 4035
في البرنامج أعلاه، يتم تخزين c1 و c2 في تاريخ الحالي. ثم نكرر ببساطة c1، ونضيف كل خاصية DateTime الخاصة ب c2 واحدة تلو الأخرى.
كما ترون، نزيد من الشهر بـ 1. هذا لأن الشهور تبدأ من 0 في Java.