java.time প্যাকেজে LocalDate ক্লাসটি একটি নির্দিষ্ট তারিখ (date) কে প্রতিনিধিত্ব করে, যেমন বছর, মাস, এবং দিন। এটি Java 8 থেকে প্রবর্তিত হয়েছিল এবং সময় সংক্রান্ত গণনা এবং পরিচালনার জন্য ব্যবহার করা হয়। LocalDate ক্লাসটি সময় (time) বা তারিখ এবং সময়ের অঞ্চলের সাথে সম্পর্কিত কোন তথ্য ধারণ করে না।
এই ক্লাসে কয়েকটি গুরুত্বপূর্ণ মেথড আছে, যা আপনাকে তারিখের সাথে বিভিন্ন ধরনের গণনা এবং তুলনা করতে সাহায্য করে। এখানে আমরা plusDays, minusDays, isBefore, এবং isAfter মেথডগুলোর ব্যবহার দেখব।
1. plusDays(long days) মেথড
plusDays(long days) মেথডটি একটি নির্দিষ্ট সংখ্যক দিন যুক্ত করে একটি নতুন LocalDate রিটার্ন করে। এটি অরিজিনাল LocalDate অবজেক্টটি পরিবর্তন করে না, বরং একটি নতুন LocalDate অবজেক্ট তৈরি করে যা নির্দিষ্ট সংখ্যক দিন যুক্ত করেছে।
Syntax:
LocalDate plusDays(long days)
Example:
import java.time.LocalDate;
public class LocalDatePlusDaysExample {
public static void main(String[] args) {
LocalDate date = LocalDate.of(2024, 1, 1); // January 1, 2024
// Add 10 days to the date
LocalDate newDate = date.plusDays(10);
System.out.println("Original Date: " + date);
System.out.println("New Date after adding 10 days: " + newDate);
}
}
Output:
Original Date: 2024-01-01
New Date after adding 10 days: 2024-01-11
ব্যাখ্যা:
- এখানে
plusDays(10)মেথড ব্যবহার করে 2024 সালের জানুয়ারির 1 তারিখে 10 দিন যোগ করা হয়েছে, যা নতুন তারিখ2024-01-11হয়েছে।
2. minusDays(long days) মেথড
minusDays(long days) মেথডটি একটি নির্দিষ্ট সংখ্যক দিন বিয়োগ করে একটি নতুন LocalDate রিটার্ন করে। এটি মূল LocalDate অবজেক্টটি পরিবর্তন না করে, বরং একটি নতুন LocalDate তৈরি করে।
Syntax:
LocalDate minusDays(long days)
Example:
import java.time.LocalDate;
public class LocalDateMinusDaysExample {
public static void main(String[] args) {
LocalDate date = LocalDate.of(2024, 1, 10); // January 10, 2024
// Subtract 5 days from the date
LocalDate newDate = date.minusDays(5);
System.out.println("Original Date: " + date);
System.out.println("New Date after subtracting 5 days: " + newDate);
}
}
Output:
Original Date: 2024-01-10
New Date after subtracting 5 days: 2024-01-05
ব্যাখ্যা:
- এখানে
minusDays(5)মেথড ব্যবহার করে 2024 সালের জানুয়ারির 10 তারিখ থেকে 5 দিন বিয়োগ করা হয়েছে, যা নতুন তারিখ2024-01-05হয়েছে।
3. isBefore(ChronoLocalDate other) মেথড
isBefore(ChronoLocalDate other) মেথডটি তুলনা করে নির্দিষ্ট একটি LocalDate অন্য একটি ChronoLocalDate (যেমন আরেকটি LocalDate) এর আগে আছে কিনা। যদি প্রথম তারিখটি অন্য তারিখের আগে থাকে, তবে এটি true রিটার্ন করবে, অন্যথায় false রিটার্ন করবে।
Syntax:
boolean isBefore(ChronoLocalDate other)
Example:
import java.time.LocalDate;
public class LocalDateIsBeforeExample {
public static void main(String[] args) {
LocalDate date1 = LocalDate.of(2024, 1, 1);
LocalDate date2 = LocalDate.of(2024, 12, 31);
// Check if date1 is before date2
boolean result = date1.isBefore(date2);
System.out.println("Is date1 before date2? " + result);
}
}
Output:
Is date1 before date2? true
ব্যাখ্যা:
isBefore()মেথডটি পরীক্ষা করছে যদি2024-01-01তারিখটি2024-12-31তারিখের আগে থাকে। এখানেtrueরিটার্ন হবে কারণ জানুয়ারির 1 তারিখ ডিসেম্বরের 31 তারিখের আগে।
4. isAfter(ChronoLocalDate other) মেথড
isAfter(ChronoLocalDate other) মেথডটি তুলনা করে নির্দিষ্ট একটি LocalDate অন্য একটি ChronoLocalDate (যেমন আরেকটি LocalDate) এর পরে আছে কিনা। যদি প্রথম তারিখটি অন্য তারিখের পরে থাকে, তবে এটি true রিটার্ন করবে, অন্যথায় false রিটার্ন করবে।
Syntax:
boolean isAfter(ChronoLocalDate other)
Example:
import java.time.LocalDate;
public class LocalDateIsAfterExample {
public static void main(String[] args) {
LocalDate date1 = LocalDate.of(2024, 12, 31);
LocalDate date2 = LocalDate.of(2024, 1, 1);
// Check if date1 is after date2
boolean result = date1.isAfter(date2);
System.out.println("Is date1 after date2? " + result);
}
}
Output:
Is date1 after date2? true
ব্যাখ্যা:
isAfter()মেথডটি পরীক্ষা করছে যদি2024-12-31তারিখটি2024-01-01তারিখের পরে থাকে। এখানেtrueরিটার্ন হবে কারণ ডিসেম্বরের 31 তারিখ জানুয়ারির 1 তারিখের পরে।
সারাংশ:
plusDays(long days): এটি নির্দিষ্ট সংখ্যক দিন যোগ করে একটি নতুনLocalDateরিটার্ন করে।minusDays(long days): এটি নির্দিষ্ট সংখ্যক দিন বিয়োগ করে একটি নতুনLocalDateরিটার্ন করে।isBefore(ChronoLocalDate other): এটি চেক করে যে, প্রথমLocalDateঅন্য একটিChronoLocalDateএর আগে আছে কিনা।isAfter(ChronoLocalDate other): এটি চেক করে যে, প্রথমLocalDateঅন্য একটিChronoLocalDateএর পরে আছে কিনা।
এগুলো LocalDate ক্লাসের কিছু অত্যন্ত কার্যকরী মেথড, যা তারিখের সাথে কাজ করার সময় তারিখে পরিবর্তন এবং তুলনা সহজ করে তোলে।
Read more