"হাই, অ্যামিগো। আমি আপনাকে তারিখ নামক একটি আকর্ষণীয় টাইপ সম্পর্কে বলতে চাই। এই প্রকারটি তারিখ এবং সময় সংরক্ষণ করে এবং সময়ের ব্যবধানও পরিমাপ করতে পারে।"
"আকর্ষণীয় শোনাচ্ছে। অনুগ্রহ করে এগিয়ে যান।"
"প্রতিটি তারিখ বস্তু একটি বরং আকর্ষণীয় আকারে একটি সময় সঞ্চয় করে: 1 জানুয়ারী, 1970, GMT থেকে মিলিসেকেন্ডের সংখ্যা।"
"ওহ!"
"হ্যাঁ। এই সংখ্যাটি এত বড় যে একটি int- এ এটির জন্য পর্যাপ্ত জায়গা নেই , তাই এটিকে একটি দীর্ঘ সময়ে সংরক্ষণ করতে হবে । তবে যেকোন দুটি তারিখের মধ্যে পার্থক্য গণনা করার জন্য এটি সত্যিই সুবিধাজনক। আপনি পার্থক্যটি খুঁজে বের করার জন্য শুধুমাত্র বিয়োগ করুন। মিলিসেকেন্ডে নির্ভুলতা। এটি ডেট লাইন এবং ডেলাইট সেভিং টাইমের সমস্যাও সমাধান করে।"
"সবচেয়ে আকর্ষণীয় অংশ হল যে প্রতিটি বস্তু তার তৈরির সময় বর্তমান সময়ের সাথে শুরু করা হয়। বর্তমান সময় জানতে, আপনাকে শুধুমাত্র একটি তারিখ অবজেক্ট তৈরি করতে হবে।"
"আপনি এটার সাথে কিভাবে কাজ করবেন?"
"এখানে কিছু উদাহরণঃ:"
public static void main(String[] args) throws Exception
{
Date today = new Date();
System.out.println("Current date: " + today);
}
public static void main(String[] args) throws Exception
{
Date currentTime = new Date(); // Get the current date and time
Thread.sleep(3000); // Wait 3 seconds (3000 milliseconds)
Date newTime = new Date(); // Get the new current time
long msDelay = newTime.getTime() - currentTime.getTime(); // Calculate the difference
System.out.println("Time difference is: " + msDelay + " in ms");
}
public static void main(String[] args) throws Exception
{
Date startTime = new Date();
long endTime = startTime.getTime() + 5000; // +5 seconds
Date endDate = new Date(endTime);
Thread.sleep(3000); // Wait 3 seconds
Date currentTime = new Date();
if(currentTime.after(endDate))// Check whether currentTime is after endDate
{
System.out.println("End time!");
}
}
public static void main(String[] args) throws Exception
{
Date currentTime = new Date();
int hours = currentTime.getHours();
int mins = currentTime.getMinutes();
int secs = currentTime.getSeconds();
System.out.println("Time since midnight " + hours + ":" + mins + ":" + secs);
}
public static void main(String[] args) throws Exception
{
Date yearStartTime = new Date();
yearStartTime.setHours(0);
yearStartTime.setMinutes(0);
yearStartTime.setSeconds(0);
yearStartTime.setDate(1); // First day of the month
yearStartTime.setMonth(0); // January (the months are indexed from 0 to 11)
Date currentTime = new Date();
long msTimeDifference = currentTime.getTime() - yearStartTime.getTime();
long msDay = 24 * 60 * 60 * 1000; // The number of milliseconds in 24 hours
int dayCount = (int) (msTimeDifference/msDay); // The number of full days
System.out.println("Days since the start of the year: " + dayCount);
}
" getTime()
পদ্ধতিটি একটি তারিখ অবজেক্টে সংরক্ষিত মিলিসেকেন্ডের সংখ্যা প্রদান করে।"
" after()
পদ্ধতিটি পরীক্ষা করে যে আমরা যে তারিখটিকে পদ্ধতিটি বলেছি সেটি পদ্ধতিতে পাস করার তারিখের পরে আসে কিনা।"
" getHours(), getMinutes(), getSeconds()
পদ্ধতিগুলি যে বস্তুতে কল করা হয়েছিল তার জন্য যথাক্রমে ঘন্টা, মিনিট এবং সেকেন্ডের সংখ্যা ফেরত দেয়।"
"এছাড়াও, শেষ উদাহরণে আপনি দেখতে পাচ্ছেন যে আপনি একটি তারিখ অবজেক্টে সংরক্ষিত তারিখ/সময় পরিবর্তন করতে পারেন। আমরা বর্তমান সময় এবং তারিখ পাই এবং তারপর ঘন্টা, মিনিট এবং সেকেন্ডকে 0 এ রিসেট করি। আমরা জানুয়ারি হিসাবেও সেট করি মাসের দিন হিসাবে মাস এবং 1। এইভাবে, yearStartTime
বস্তুটি বর্তমান বছরের 1 জানুয়ারী তারিখ এবং সময় 00:00:00 সংরক্ষণ করে।
"এর পরে, আমরা আবার বর্তমান তারিখ ( currentTime
) পাই, মিলিসেকেন্ডে দুটি তারিখের মধ্যে পার্থক্য গণনা করি এবং এটিকে সংরক্ষণ করি msTimeDifference
।"
"তারপর আমরা msTimeDifference
চলতি বছরের শুরু থেকে আজ পর্যন্ত পূর্ণ দিনের সংখ্যা পেতে 24 ঘন্টায় মিলিসেকেন্ডের সংখ্যা দিয়ে ভাগ করি।"
"বাহ, এই এত শান্ত!"
GO TO FULL VERSION