দুটি java.util. তারিখ তুলনা করে তারা একই দিনে আছে কিনা তা দেখতে


249

আমার দুটি Dateএস (উদা date1এবং date2) তুলনা করতে হবে এবং একই দিনে boolean sameDayদু'জনের Dateভাগ করে নেওয়া সত্য , এবং যদি তা না হয় তবে সত্যই তা নিয়ে আসছি ।

কিভাবে আমি এটি করতে পারব? এখানে বিভ্রান্তির ঘূর্ণি মনে হচ্ছে ... এবং আমি যদি সম্ভব হয় তবে জেডিকে ছাড়িয়ে অন্য নির্ভরতা টানতে চাই।

স্পষ্ট করে বলুন: যদি date1এবং date2একই বছর, মাস এবং দিন ভাগ করে নেয় তবে sameDayসত্য, অন্যথায় এটি মিথ্যা। আমি বুঝতে পারি এটির জন্য টাইমজোনটির জ্ঞান প্রয়োজন ... টাইমজোনটি পাস করা ভাল লাগবে তবে আমি GMT বা স্থানীয় সময়ের সাথে থাকতে পারি যতক্ষণ না জানি আচরণটি কী the

আবার, স্পষ্ট করতে:

date1 = 2008 Jun 03 12:56:03
date2 = 2008 Jun 03 12:59:44
  => sameDate = true

date1 = 2009 Jun 03 12:56:03
date2 = 2008 Jun 03 12:59:44
  => sameDate = false

date1 = 2008 Aug 03 12:00:00
date2 = 2008 Jun 03 12:00:00
  => sameDate = false

কেবল পরিষ্কার করতে - আপনি জানতে চান যে দুটি তারিখের বস্তু সপ্তাহের একই দিনে পড়ে?
রব হাইজার

আপনি কি পুরো তারিখ (দিন, মাস, বছর) বা একমাত্র মাসের তুলনা করতে চান?
এক্সপিরিটোও

1
@ রব: না, একই দিন / মাস / বছর ... আমি পরিষ্কার করব।
জেসন এস

তাহলে আপনি "সমান" ব্যবহার করবেন না কেন?
এক্সপিরিটো

7
কারণ ঘন্টা / মিনিট / সেকেন্ড আলাদা হলে এগুলি সমান নয়।
জেসন এস

উত্তর:


415
Calendar cal1 = Calendar.getInstance();
Calendar cal2 = Calendar.getInstance();
cal1.setTime(date1);
cal2.setTime(date2);
boolean sameDay = cal1.get(Calendar.DAY_OF_YEAR) == cal2.get(Calendar.DAY_OF_YEAR) &&
                  cal1.get(Calendar.YEAR) == cal2.get(Calendar.YEAR);

নোট করুন যে "একই দিন" কোনও ধারণা হিসাবে সহজ মনে হয় না যখন বিভিন্ন টাইম জোনের সাথে যুক্ত হতে পারে। উভয় তারিখের জন্য উপরের কোডটি চলমান কম্পিউটারের দ্বারা ব্যবহৃত সময় অঞ্চলটির সাথে তুলনামূলকভাবে দিনটি গণনা করবে। আপনার যদি প্রয়োজন মতো এটি না হয় তবে আপনাকে প্রাসঙ্গিক সময় অঞ্চল (গুলি) পাস করতে হবেCalendar.getInstance() হয় তবে আপনি "একই দিন" দিয়ে ঠিক কী বোঝাতে চান তা স্থির করার পরে, আপনাকে কলগুলির ।

এবং হ্যাঁ, জোডা টাইমস LocalDateপুরো জিনিসটিকে আরও পরিষ্কার এবং সহজ করে তুলবে (যদিও একই সময় অঞ্চলগুলির সাথে জড়িত একই সমস্যাগুলি উপস্থিত থাকবে)।


ধন্যবাদ, দেখে মনে হচ্ছে এটি আমার যা ইচ্ছা তা করবে। আমার ক্ষেত্রে আমি ধারাবাহিকের পরের তারিখগুলি তুলনা করছি, সুতরাং দেখে মনে হচ্ছে যে আমি আমার সিরিজের তারিখের পরিবর্তে ক্যালেন্ডার উদাহরণগুলি ব্যবহার করতে পারি।
জেসন এস

1
@ জেসন এটি ভাল ধারণা বা নাও থাকতে পারে। ক্যালেন্ডারের মূল সমস্যাটি হ'ল এটি একটি প্রচুর অভ্যন্তরীণ রাজ্য সহ একটি ভারী ওজনের শ্রেণি, যার কয়েকটি এর সমান () প্রয়োগে ব্যবহৃত হয়। আপনি যদি নিজের তারিখগুলি সাম্যের জন্য তুলনা না করেন এবং সেগুলি হ্যাশম্যাপগুলিতে রাখেন না তবে আপনার ভাল হওয়া উচিত।
মাইকেল বর্গওয়ার্ট

শীতল, ধন্যবাদ, আমি এখানে জিজ্ঞাসিত তুলনা-বর্তমান এবং আগের দিনের লজিকটি ব্যবহার করছি। "সমতুল্য" এবং "হ্যাশকোড" ফাংশনগুলি কখনই কল করা উচিত নয়।
জেসন এস

1
@ উমারহায়াত: কোড বছরের বছরের সাথে তুলনা করে, মাসের দিনটির সাথে নয়। একটি কম তুলনা প্রয়োজন, সংক্ষিপ্ত কোড।
মাইকেল বর্গওয়ার্ট

2
পরামর্শ: প্রথমে DAY_OF_YEAR এর তুলনা করুন, এটি বছর পরীক্ষা করতে হবে না। ঠিক আছে এটার সাথে তুলনা করা আসলেই ব্যয়বহুল নয় তবে ...
মার্টিন পি।

332

কেমন:

SimpleDateFormat fmt = new SimpleDateFormat("yyyyMMdd");
return fmt.format(date1).equals(fmt.format(date2));

প্রয়োজনে আপনি টাইমজোনটি সিম্পলডেট ফরমেটে সেট করতে পারেন।


2
(আমি প্রকৃতপক্ষে আমার ক্ষেত্রে সিম্পলডেট ফরমেটটি ব্যবহার করছি, সুতরাং এটি একধরণের উপযুক্ত বলে মনে হচ্ছে))
জেসন এস

8
আমি এটি দেখে আশ্চর্য হয়েছি, তবে পারফরম্যান্সের দিক থেকেও এই SimpleDateFormatপদ্ধতিটি এখানে Calendarএস ব্যবহার করে উল্লিখিত অন্যগুলির তুলনায় দ্রুততর । Calendarপদ্ধতি হিসাবে এটি অর্ধেক সময় নেয় takes (কমপক্ষে আমার সিস্টেমে)। যশ!
মাইকেল প্লুটজ

এই উত্তরের বেশিরভাগ ব্যয়ই সিম্পলডেট ফরমেট তৈরিতে। আপনি আরও ভাল পারফরম্যান্স চাইলে এটি একটি একক ক্ষেত্রে একটি থ্রেডলোকাল ফিল্ডে রাখুন
থিয়েরি

1
আমি সুইফটেও এটি করি। এটি আশ্চর্যজনক যে এত সাধারণ জিনিসটির বেশিরভাগ ভাষায় একই হ্যাকের প্রয়োজন হয়। সি # ব্যতিক্রম হচ্ছে - যদি (d1. তারিখ == d2. তারিখ) ...
alpsystems.com

2
এটি কুৎসিত; এই upvated মত একটি হ্যাক দেখে অবাক।
জিসল্ট সাফরানি

162

আমি এটি করতে " অ্যাপাচি কমন্স ল্যাং" প্যাকেজটি ব্যবহার করি (যথা org.apache.commons.lang.time.DateUtils )

boolean samedate = DateUtils.isSameDay(date1, date2);  //Takes either Calendar or Date objects

2
এটি একটি বাহ্যিক নির্ভরতা ব্যবহার করে ... তবে ভবিষ্যতের জন্য এটি জেনে রাখা ভাল।
জেসন এস

20
কেবল উত্সটি অনুলিপি করুন এবং এটি একটি দিন কল করুন :)
আন্তন কুজমিন

তবে এটি কোনও অবৈধ যুক্তিযুক্ত ব্যতিক্রম ছুঁড়ে দেয় যদি কোনও দিনই শূন্য থাকে, যা কিছু ক্ষেত্রে আদর্শ নয়।
রবিরাজ

1
স্ট্যাকওভারফ্লো . com/a/2517824/1665809-এ যেমন মন্তব্য করা হয়েছে তবে বিভিন্ন সময় অঞ্চল জড়িত থাকলে এই সমাধানটি উপযুক্ত নাও হতে পারে।
mrod

24

আপনি প্রতিটি তারিখের জুলিয়ান ডে নম্বর গণনা করে এবং তারপরে এগুলির তুলনা করে বাহ্যিক নির্ভরতা এবং ক্যালেন্ডার ব্যবহারের পারফরম্যান্সের আঘাত এড়াতে পারেন :

public static boolean isSameDay(Date date1, Date date2) {

    // Strip out the time part of each date.
    long julianDayNumber1 = date1.getTime() / MILLIS_PER_DAY;
    long julianDayNumber2 = date2.getTime() / MILLIS_PER_DAY;

    // If they now are equal then it is the same day.
    return julianDayNumber1 == julianDayNumber2;
}

4
তবে সাবধান হোন যে এটি দিনের আলোর সঞ্চয়ের কারণে দিনের দৈর্ঘ্যের পরিবর্তনগুলি বিবেচনায় নিতে ব্যর্থ । কিন্তু তারপরে স্ট্রেইটগুলি Dateসময় অঞ্চলগুলির ধারণাটি সজ্জিত করে না তাই নির্বিচারে এটিকে ঠিক করার কোনও উপায় নেই।
আয়েজ

3
এটি হ'ল দ্রুততম সমাধান - অনেক অনেক ধন্যবাদ, ঠিক আমি যা খুঁজছিলাম; যেহেতু আমাকে প্রচুর তারিখগুলি পরীক্ষা করতে হবে ...
রিডকুলি

2
নিতপিক: তারিখ.গেটটাইম () জুলিয়ান ডে নম্বরটি দেয় না, তবে 1970-01-01 থেকে মিলসেকেন্ডে। বিশাল পার্থক্য.
প্রতি লিন্ডবার্গ

2
এটি ইউটিসি সময় অঞ্চলে তুলনা করে। আপনি যদি নিজের স্থানীয় সময় অঞ্চল বা গ্রহের কোনও অন্য জায়গা চাইতেন তবে আপনি যে ফলাফল পেয়েছেন তা সঠিক কিনা তা আপনি জানতে পারবেন না।
ওলে ভিভি

20

Joda-টাইম

নির্ভরতা যুক্ত করার ক্ষেত্রে, আমি ভয় করি java.util. তারিখ এবং .ক্যালেন্ডারটি সত্যিই এত খারাপ যে কোনও নতুন প্রকল্পে আমি প্রথম কাজটি জোদা-টাইম লাইব্রেরি যুক্ত করি। জাভা 8-এ আপনি জোদা-টাইম দ্বারা অনুপ্রাণিত নতুন java.Time প্যাকেজটি ব্যবহার করতে পারেন।

জোদা-সময়ের মূলটি DateTimeক্লাস। Java.util. তারিখের বিপরীতে, এটি নির্ধারিত সময় অঞ্চল ( DateTimeZone) বোঝে । জুডেট থেকে রূপান্তর করার সময়, একটি অঞ্চল নির্ধারণ করুন।

DateTimeZone zone = DateTimeZone.forID( "America/Montreal" );
DateTime dateTimeQuébec = new DateTime( date , zone );

LocalDate

একই তারিখে দুই তারিখ-সময় অবতরণ করে কিনা তা যাচাই করার একটি উপায় LocalDate objects

এই রূপান্তরটি নির্ধারিত সময় অঞ্চলটির উপর নির্ভর করে। তুলনা করতেLocalDateবস্তুর করতে, তাদের অবশ্যই একই অঞ্চলে রূপান্তর করা উচিত।

এখানে একটি সামান্য ইউটিলিটি পদ্ধতি।

static public Boolean sameDate ( DateTime dt1 , DateTime dt2 )
{
    LocalDate ld1 = new LocalDate( dt1 );
    // LocalDate determination depends on the time zone.
    // So be sure the date-time values are adjusted to the same time zone.
    LocalDate ld2 = new LocalDate( dt2.withZone( dt1.getZone() ) );
    Boolean match = ld1.equals( ld2 );
    return match;
}

প্রথম ডেটটাইম অবজেক্টের সময় অঞ্চলটি ব্যবহার করা উচিত বলে ধরে নেওয়ার চেয়ে সময় অঞ্চল নির্দিষ্ট করে আরও ভাল যুক্তি হতে পারে।

static public Boolean sameDate ( DateTimeZone zone , DateTime dt1 , DateTime dt2 )
{
    LocalDate ld1 = new LocalDate( dt1.withZone( zone ) );
    // LocalDate determination depends on the time zone.
    // So be sure the date-time values are adjusted to the same time zone.
    LocalDate ld2 = new LocalDate( dt2.withZone( zone ) );
    return ld1.equals( ld2 );
}

স্ট্রিং প্রতিনিধিত্ব

আর একটি পদ্ধতি হ'ল প্রতিটি তারিখের তারিখের অংশের স্ট্রিং উপস্থাপনা তৈরি করা, তারপরে স্ট্রিংগুলির তুলনা করুন।

আবার, নির্ধারিত সময় অঞ্চলটি গুরুত্বপূর্ণ।

DateTimeFormatter formatter = ISODateTimeFormat.date();  // Static method.
String s1 = formatter.print( dateTime1 );
String s2 = formatter.print( dateTime2.withZone( dt1.getZone() )  );
Boolean match = s1.equals( s2 );
return match;

সময় বিঘত

সাধারণ সমাধানটি হ'ল কিছু সময়ের জন্য সংজ্ঞা দেওয়া হয়, তারপরে জিজ্ঞাসা করুন স্প্যানটিতে আপনার লক্ষ্য রয়েছে কি না। এই উদাহরণ কোডটি জোদা-সময় ২.৪ এ রয়েছে। মনে রাখবেন যে "মধ্যরাত্রি" সম্পর্কিত ক্লাসগুলি হ্রাস করা হয়েছে। পরিবর্তে withTimeAtStartOfDayপদ্ধতিটি ব্যবহার করুন । ব্যবধান, সময়কাল এবং সময়কাল: জোদা-টাইম বিভিন্ন উপায়ে সময়কাল উপস্থাপনের জন্য তিনটি শ্রেণি সরবরাহ করে।

"হাফ-ওপেন" পদ্ধতির ব্যবহার যেখানে স্প্যানের শুরুটি অন্তর্ভুক্ত এবং সমাপ্তি একচেটিয়া।

লক্ষ্যটির সময় অঞ্চল ব্যবধানের সময় জোনের চেয়ে আলাদা হতে পারে।

DateTimeZone timeZone = DateTimeZone.forID( "Europe/Paris" );
DateTime target = new DateTime( 2012, 3, 4, 5, 6, 7, timeZone );
DateTime start = DateTime.now( timeZone ).withTimeAtStartOfDay();
DateTime stop = start.plusDays( 1 ).withTimeAtStartOfDay();
Interval interval = new Interval( start, stop );
boolean containsTarget = interval.contains( target );

java.time

জাভা 8 এবং পরে জাভা.টাইম ফ্রেমওয়ার্ক সহ আসে । জোদা-টাইম দ্বারা অনুপ্রাণিত, জেএসআর 310 দ্বারা সংজ্ঞায়িত এবং থ্রিটেন-এক্সট্রা প্রকল্প দ্বারা প্রসারিত। টিউটোরিয়াল দেখুন

জোদা-সময়ের নির্মাতারা আমাদের সকলকে জাভা.টাইমে যাওয়ার সুবিধার্থে যত তাড়াতাড়ি চলে যেতে নির্দেশ দিয়েছেন। ইতিমধ্যে জোদা-টাইম সক্রিয়ভাবে রক্ষণাবেক্ষণ করা প্রকল্প হিসাবে চালিয়ে যাচ্ছে। তবে ভবিষ্যতের কাজ জোদা-টাইমের পরিবর্তে কেবল জাভা.টাইম এবং থ্রিটেন-এক্সট্রাতে হবে বলে আশা করি।

সংক্ষেপে জাভা.টাইম সংক্ষিপ্তসার জন্য… Instantইউটিসি-র সময়রেখার একটি মুহুর্ত। ZoneIdএকটি ZonedDateTimeঅবজেক্ট পেতে একটি সময় অঞ্চল ( ) প্রয়োগ করুন । একটি তারিখ-সময় অস্পষ্ট অনির্দিষ্ট ধারণা পেতে টাইমলাইনে বন্ধ সরাতে,, "স্থানীয়" ক্লাস ব্যবহার করুন: LocalDateTime, LocalDate, LocalTime

এই উত্তরের জোদা-সময় বিভাগে আলোচনা করা যুক্তিটি জাভা.টাইমের ক্ষেত্রে প্রযোজ্য।

পুরানো java.util.Date বর্গের toInstantজাভা.টাইমে রূপান্তর করার জন্য একটি নতুন পদ্ধতি রয়েছে।

Instant instant = yourJavaUtilDate.toInstant(); // Convert into java.time type.

তারিখ নির্ধারণের জন্য একটি সময় অঞ্চল প্রয়োজন।

ZoneId zoneId = ZoneId.of( "America/Montreal" );

আমরা যে সময় অঞ্চল বস্তুর প্রয়োগ Instantএকটি প্রাপ্ত ZonedDateTime। সেই থেকে আমরা একটি তারিখ-কেবল মানটি বের করি (ক LocalDate) যেহেতু আমাদের লক্ষ্য তারিখগুলি (ঘন্টা, মিনিট, ইত্যাদি নয়) তুলনা করা।

ZonedDateTime zdt1 = ZonedDateTime.ofInstant( instant , zoneId );
LocalDate localDate1 = LocalDate.from( zdt1 );

java.util.Dateতুলনার জন্য আমাদের প্রয়োজন দ্বিতীয় বস্তুর সাথে একই করুন । আমি পরিবর্তে বর্তমান মুহূর্তটি ব্যবহার করব।

ZonedDateTime zdt2 = ZonedDateTime.now( zoneId );
LocalDate localDate2 = LocalDate.from( zdt2 );

isEqualএকই তারিখের মান পরীক্ষা করার জন্য বিশেষ পদ্ধতিটি ব্যবহার করুন ।

Boolean sameDate = localDate1.isEqual( localDate2 );

জাভা.টাইম: বা আপনি কেবল করতে পারেনLocalDate localDate = LocalDate.fromDateFields(yourJavaUtilDate);
সাইবারমিউ

1
@ সাইবারমিউ এর? সেখানে নেই fromDateFields() আমার LocalDateবর্গ
ওলে ভিভি

1
দুঃখিত, আমি আরও পরিষ্কার করা উচিত ছিল। মন্তব্যটি জোদা-সময় স্থানীয় তারিখের জন্য প্রাসঙ্গিক শ্রেণীর ।
সাইবারমিউ

7

তারিখগুলি জাভা 8 জাভা.টাইমে রূপান্তর করুন here স্থানীয় সময় হিসাবে এখানে দেখা হয়েছে

LocalDate localDate1 = date1.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
LocalDate localDate2 = date2.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();

// compare dates
assertTrue("Not on the same day", localDate1.equals(localDate2));

এটি আমার প্রিয় উত্তর। আপনি যদি কম্পিউটারের সেটিংয়ের উপর নির্ভর না করে ব্যবহৃত সময় অঞ্চলটি নিয়ন্ত্রণ করতে চান তবে উদাহরণস্বরূপ ZoneId.of("America/Phoenix") বা ZoneId.of("Europe/Budapest")সিস্টেমের ডিফল্ট পরিবর্তে এটি প্রয়োগ করা সহজ।
ওলে ভিভি

6

জাভা 8

আপনি যদি আপনার প্রকল্পে জাভা 8 ব্যবহার করছেন এবং তুলনা করছেন java.sql.Timestamp, আপনি LocalDateক্লাসটি ব্যবহার করতে পারেন :

sameDate = date1.toLocalDateTime().toLocalDate().equals(date2.toLocalDateTime().toLocalDate());

আপনি যদি ব্যবহার করে থাকেন java.util.Dateতবে ইস্তওয়ানের উত্তরের দিকে লক্ষ্য রাখুন যা কম অস্পষ্ট।


জাভা 8 ব্যবহার করা ভাল ধারণা। আপনি কি ধরে নিচ্ছেন date1এবং date2আছেন java.sql.Timestamp? তারা যে প্রশ্নটি করেছে তা অনুসারে Dateআমি বুঝতে পারতাম java.util.Date। এছাড়াও আপনার কোডটি কম্পিউটারের টাইম জোন সেটিং ব্যবহার করে, যা অনেকগুলি উদ্দেশ্যে ভাল হয়; তবুও আমি এই সত্যটি কোডে স্পষ্ট করে তুলতে চাই।
ওলে ভিভি

@ OleV.V। আপনার মন্তব্যের জন্য আপনাকে ধন্যবাদ, আমার আসল উত্তরটি আসলেই ছিল java.sql.Timestamp। যেমনটি আপনি বলেছেন সময় স্পষ্ট করে সময় অঞ্চল নির্ধারণ করা আরও ভাল।
অ্যান্টেক্স

5
private boolean isSameDay(Date date1, Date date2) {
        Calendar calendar1 = Calendar.getInstance();
        calendar1.setTime(date1);
        Calendar calendar2 = Calendar.getInstance();
        calendar2.setTime(date2);
        boolean sameYear = calendar1.get(Calendar.YEAR) == calendar2.get(Calendar.YEAR);
        boolean sameMonth = calendar1.get(Calendar.MONTH) == calendar2.get(Calendar.MONTH);
        boolean sameDay = calendar1.get(Calendar.DAY_OF_MONTH) == calendar2.get(Calendar.DAY_OF_MONTH);
        return (sameDay && sameMonth && sameYear);
    }

5

অ্যান্ড্রয়েড ব্যবহারকারীদের জন্য:

তুমি ব্যবহার করতে পার DateUtils.isToday(dateMilliseconds)প্রদত্ত তারিখটি বর্তমান দিন কিনা তা পরীক্ষা ।

এপিআই রেফারেন্স: https://developer.android.com/references/android/text/format/DateUtils.html#isToday(long)


1
এই পদ্ধতিটি অবজেক্ট সময় ব্যবহার করে যা এপিআই 22: থেকে
অবনতিযুক্ত

2
অ্যান্ড্রয়েড বিকাশকারীদের জন্য +1। এই পদ্ধতিটি প্যারামিটার হিসাবে আদিম দীর্ঘ ব্যবহার করে, কেবল ব্যবহার করুন DateUtils.isToday(x.getTime())(x একটি java.util.date উদাহরণ) করবে যা করবে
জ্যাকাইকফ্লাউ

1

বিনিল টমাস সমাধান ছাড়াও

public static boolean isOnSameDay(Timestamp... dates) {
    SimpleDateFormat fmt = new SimpleDateFormat("yyyyMMdd");
    String date1 = fmt.format(dates[0]);
    for (Timestamp date : dates) {
        if (!fmt.format(date).equals(date1)) {
            return false;
        }
    }
    return true;
}

ব্যবহার

    isOnSameDay(date1,date2,date3 ...);
//or 
    isOnSameDay(mydates);

1

কোটলিন ডেভসের জন্য এটি ফর্ম্যাটযুক্ত স্ট্রিং পদ্ধতির তুলনা সহ সংস্করণ:

val sdf = SimpleDateFormat("yyMMdd")
if (sdf.format(date1) == sdf.format(date2)) {
    // same day
}

এটি সর্বোত্তম উপায় নয়, তবে এটি সংক্ষিপ্ত এবং কার্যকর।


1
SimpleDateFormatশ্রেণী আধুনিক দ্বারা বছর পূর্বে supplanted ছিল java.time.DateTimeFormatterJSR 310. সংজ্ঞায়িত বর্গ 2019-এ ব্যবহারের প্রস্তাবনা দরিদ্র উপদেশ।
বাসিল বাউরেক

2
এই কোডটি সময় অঞ্চলটির গুরুত্বপূর্ণ সমস্যাটিকে উপেক্ষা করে। যে কোনও মুহুর্তের জন্য, তারিখটি অঞ্চল অনুসারে বিশ্ব জুড়ে পরিবর্তিত হয়।
বাসিল বাউরেক

-4

আপনি সরলডেট ফরমেটের উপর নির্ভর না করেই সিম্পলডেট ফরমেট সমাধানের মতো একই যুক্তি প্রয়োগ করতে পারেন

date1.getFullYear()*10000 + date1.getMonth()*100 + date1.getDate() == 
date2.getFullYear()*10000 + date2.getMonth()*100 + date2.getDate()

6
এই পদ্ধতিগুলি java.util.Date এ অবমূল্যায়ন করা হয়। এটি করার জন্য আপনার ক্যালেন্ডার ব্যবহার করা উচিত। এছাড়াও এটিকে getYear না getFullYear হয়
ক্রিস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.