Java Programming

Java में तारीखों में दिन प्रभावी ढंग से जोड़ना

Spread the love

जावा में तारीखों में दिन प्रभावी ढंग से जोड़ना

जावा तारीख में दिन जोड़ने के कई तरीके प्रदान करता है, प्रत्येक अपनी ताकत और कमजोरियों के साथ। इष्टतम विकल्प आपके जावा संस्करण और विशिष्ट आवश्यकताओं पर निर्भर करता है। यह लेख सबसे कुशल और अनुशंसित विधियों का पता लगाता है, उनके लाभों और नुकसानों को उजागर करता है।

विषयवस्तु की तालिका

अनुशंसित दृष्टिकोण: LocalDate.plusDays()

जावा 8 और बाद के संस्करणों के लिए, LocalDate.plusDays() विधि सबसे सरल और अनुशंसित दृष्टिकोण है। LocalDate समय क्षेत्र की जानकारी के बिना एक तिथि का प्रतिनिधित्व करता है, जो इसे साधारण तिथि हेरफेर के लिए आदर्श बनाता है। यह विधि स्वच्छ, पठनीय है, और पुरानी विधियों के संभावित नुकसान से बचाती है।


import java.time.LocalDate;

public class AddOneDay {
    public static void main(String[] args) {
        LocalDate date = LocalDate.now(); // आज की तिथि प्राप्त करें
        LocalDate tomorrow = date.plusDays(1); // एक दिन जोड़ें

        System.out.println("आज: " + date);
        System.out.println("कल: " + tomorrow);
    }
}

यह संक्षिप्त कोड स्निपेट वर्तमान तिथि प्राप्त करता है और एक दिन जोड़ता है, एक नया LocalDate ऑब्जेक्ट उत्पन्न करता है।

Calendar क्लास का उपयोग करना

Calendar क्लास एक पुराना विकल्प है, जो आम तौर पर LocalDate की तुलना में कम सहज और त्रुटियों से ग्रस्त है। यद्यपि कार्यात्मक, यह कम पठनीय है और अधिक बाइलरप्लेट कोड की आवश्यकता होती है।


import java.util.Calendar;
import java.util.Date;

public class AddOneDayCalendar {
    public static void main(String[] args) {
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(new Date()); // वर्तमान तिथि पर सेट करें
        calendar.add(Calendar.DAY_OF_MONTH, 1); // एक दिन जोड़ें
        Date tomorrow = calendar.getTime();

        System.out.println("आज: " + new Date());
        System.out.println("कल: " + tomorrow);
    }
}

यह उदाहरण Calendar.add() के उपयोग को दर्शाता है, लेकिन इसकी जटिलता इसे LocalDate दृष्टिकोण की तुलना में कम बेहतर बनाती है।

मिलीसेकंड जोड़ना

सीधे मिलीसेकंड जोड़ना संभव है लेकिन कम सुंदर और अधिक त्रुटि-प्रवण है। एक दिन में मिलीसेकंड की सटीक गणना करना महत्वपूर्ण है, और इस पद्धति में अन्य दृष्टिकोणों की पठनीयता का अभाव है।


import java.util.Date;

public class AddOneDayMilliseconds {
    public static void main(String[] args) {
        Date today = new Date();
        long millisecondsInADay = 24 * 60 * 60 * 1000; // एक दिन में मिलीसेकंड
        Date tomorrow = new Date(today.getTime() + millisecondsInADay);

        System.out.println("आज: " + today);
        System.out.println("कल: " + tomorrow);
    }
}

Instant क्लास का उपयोग करना

Instant क्लास समय की एक बिंदु का प्रतिनिधित्व करता है, जिसमें समय क्षेत्र की जानकारी भी शामिल है। विशिष्ट संदर्भों में उपयोगी होने पर, यह केवल किसी तिथि में दिन जोड़ने के लिए कम उपयुक्त है। जोड़ के लिए LocalDate में परिवर्तित करना और वापस Instant में अनावश्यक जटिलता जोड़ता है।


import java.time.Instant;
import java.time.LocalDate;
import java.time.ZoneId;

public class AddOneDayInstant {
    public static void main(String[] args) {
        Instant now = Instant.now();
        LocalDate today = now.atZone(ZoneId.systemDefault()).toLocalDate();
        LocalDate tomorrow = today.plusDays(1);
        Instant tomorrowInstant = tomorrow.atStartOfDay(ZoneId.systemDefault()).toInstant();

        System.out.println("आज: " + now);
        System.out.println("कल: " + tomorrowInstant);
    }
}

यह विधि रूपांतरण प्रक्रिया को दर्शाती है लेकिन LocalDate का सीधे उपयोग करने की तुलना में इसके ओवरहेड को उजागर करती है।

निष्कर्ष में, LocalDate.plusDays() जावा में तिथियों में दिन जोड़ने के लिए सबसे कुशल और अनुशंसित विधि है, जो स्पष्टता, सरलता और मजबूती प्रदान करती है। जबकि अन्य विधियों को पूर्णता के लिए प्रस्तुत किया गया है, नए कोड के लिए LocalDate.plusDays() को प्राथमिकता दी जानी चाहिए।

प्रातिक्रिया दे

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *