কম্পিউটার টিউটোরিয়াল

জাভাতে স্ট্রিং ফরম্যাটে দুটি ডেট তুলনার পদ্ধতি

java.text.SimpleDateFormat ক্লাস স্ট্রিংকে ডেটে এবং ডেটকে স্ট্রিংতে ফরম্যাট ও পার্স করতে ব্যবহৃত হয়।

  • এই ক্লাসের একটি কনস্ট্রাক্টর ফরম্যাট স্ট্রিং গ্রহণ করে SimpleDateFormat অবজেক্ট তৈরি করে।
  • ইচ্ছিত ফরম্যাট স্ট্রিং পাস করে ইনস্ট্যান্সিয়েট করুন।
  • parse() মেথড দিয়ে ডেট স্ট্রিং পার্স করুন।
  • util.Date ক্লাসে before(), after(), equals() মেথড থাকে দুটি ডেট তুলনা করতে।

উদাহরণ: SimpleDateFormat দিয়ে স্ট্রিং থেকে ডেট বানানো ও তুলনা

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class Demo {
    public static void main(String args[]) throws ParseException {
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-dd-MM");
        String dateStr1 = "2007-11-25";
        String dateStr2 = "1999-9-12";

        Date date1 = formatter.parse(dateStr1);
        Date date2 = formatter.parse(dateStr2);

        Boolean bool1 = date1.after(date2);
        Boolean bool2 = date1.before(date2);
        Boolean bool3 = date1.equals(date2);

        if (bool1) {
            System.out.println(dateStr1 + " is after " + dateStr2);
        } else if (bool2) {
            System.out.println(dateStr1 + " is before " + dateStr2);
        } else if (bool3) {
            System.out.println(dateStr1 + " is equals to " + dateStr2);
        }
    }
}

আউটপুট

2007-11-25 is after 1999-9-12

LocalDate ক্লাসের parse() মেথড ব্যবহার

LocalDate.parse() মেথড স্ট্রিং গ্রহণ করে LocalDate অবজেক্ট রিটার্ন করে।

উদাহরণ

import java.time.LocalDate;

public class Test {
    public static void main(String args[]) {
        String dateStr1 = "2007-11-25";
        String dateStr2 = "1999-9-12";
        LocalDate date1 = LocalDate.parse(dateStr1);
        LocalDate date2 = LocalDate.parse(dateStr1); // বাগ: dateStr2 হওয়া উচিত

        Boolean bool1 = date1.isAfter(date2);
        Boolean bool2 = date1.isBefore(date2);
        Boolean bool3 = date1.isEqual(date2);

        if (bool1) {
            System.out.println(dateStr1 + " is after " + dateStr2);
        } else if (bool2) {
            System.out.println(dateStr1 + " is before " + dateStr2);
        } else if (bool3) {
            System.out.println(dateStr1 + " is equal to " + dateStr2);
        }
    }
}

আউটপুট

2007-11-25 is equal to 1999-9-12

নোট: উপরের উদাহরণে date2 ইনস্ট্যান্সিয়েট করার সময় dateStr1 ব্যবহৃত হয়েছে, তাই ফলাফল equal দেখায়। সঠিক কোডে LocalDate date2 = LocalDate.parse(dateStr2); হওয়া উচিত।

  1. জাভা ওপেনসিভি লাইব্রেরি ব্যবহার করে দুটি চিত্র তুলনা

  2. জাভাতে দুটি তারিখ তুলনা করুন

  3. পাইথনে স্ট্রিং ফরম্যাটিং: % বনাম .format তুলনা

  4. জাভাতে স্ট্রিং তুলনা: Equals, equalsIgnoreCase এবং '==' এড়ানো