2010-10-01 17 views
41

जावा में न्यूनतम दिनांक मूल्य क्या है?जावा में न्यूनतम तिथि

+19

न्यूनतम दिनांक का क्या अर्थ है? – qrtt1

+0

संभावित डुप्लिकेट [जावा: ग्रेगोरियन कैलेंडर के अधिकतम और न्यूनतम मान क्या हैं?] (Http://stackoverflow.com/questions/2393016/java-what-where-are-the- अधिकतम- और- न्यूनतम- मूल्य-के-ए-ग्रेगोरियन कैलेंडर) –

+0

इस धागे को देखें http://stackoverflow.com/questions/2393016/java-what-where-are-the- अधिकतम- और- न्यूनतम-values-of-a-gregoriancalendar – sproketboy

उत्तर

36

आप एक टाइमस्टैम्प के रूप में java.util.Date बारे में बात कर रहे हैं, तो आप इस

Date d = new Date(0L) कर सकते हैं और आप इस का प्रतिनिधित्व करता है गुरु जनवरी 01 01:00:00 GMT 1970


tulskiy के रूप में बताया गया है देखेंगे तिथि कन्स्ट्रक्टर को ऋणात्मक मूल्य पारित करना संभव है। हम ऐसा और एक तिथि प्रारूप उस युग का उपयोग करते हैं हम देख सकते हैं:

Date d = new Date(Long.MIN_VALUE); 
DateFormat df = new SimpleDateFormat("EEE, d MMM yyyy G HH:mm:ss Z"); 
System.out.println(df.format(d)); 

प्रदर्शित करता है: सूर्य, 2 दिसंबर 292,269,055 ई.पू. 16:47:04 +0000

55

मत भूलना कि दिनांक निर्माता खुशी से नकारात्मक मूल्य स्वीकार करता है।

Date date = new Date(Long.MIN_VALUE); 

रिटर्न

सूर्य दिसंबर 02 22:47:04 BDT 292269055

मुझे लगता है कि बिग बैंग डायनासोर :)

संपादित करने के समय के बारे में है

मार्टिन क्लेटन ने उत्तर दिया, आप युग की जांच के लिए कैलेंडर क्लास का उपयोग कर सकते हैं। यह आउटपुट 0 होगा जो बीसीई के लिए है:

Calendar calendar = Calendar.getInstance(); 
calendar.setTime(new Date(Long.MIN_VALUE)); 
System.out.println(calendar.get(Calendar.ERA)); 
+2

लेकिन यह भविष्य में एक तारीख (वर्ष 2 9 226 9 055) है, अतीत में नहीं। ऐसा लगता है कि पैरामीटर को सकारात्मक मान के रूप में व्याख्या किया जा रहा है। – Grodriguez

+0

@Grodriguez - यद्यपि उस वर्ष का युग क्या है? ;-) –

+0

@Grodriguez: मेरा संपादन देखें, यह अतीत में एक मूल्य है। –

4

यह कैलेंडर कक्षाओं के समान है।

इस प्रयास करें:

Date d = new Date(Long.MIN_VALUE); 
System.out.println(d); 

आप देखेंगे:

Sun Dec 02 16:47:04 GMT 292269055 

लेकिन प्राथमिक दिनांक फॉर्मेट युग शामिल नहीं है - जो इस तिथि के लिए ईसा पूर्व है।

11

अन्य उत्तर सही हो सकते हैं लेकिन बाहर की गई कक्षाओं का उपयोग करें।

java.time

वर्ष तिथि-समय वर्गों (java.util.Date/.Calendar आदि) जावा 8 और बाद में बनाया गया java.time ढांचे द्वारा का स्थान ले लिया गया है।

java.time कक्षाएं Joda-Time से प्रेरित हैं, JSR 310 द्वारा परिभाषित, ThreeTen-अतिरिक्त परियोजना के लिए बढ़ा दी, जावा 6 & 7 के लिए वापस-पोर्ट ThreeTen-Backport परियोजना द्वारा, और ThreeTenABP परियोजना में Android के लिए अनुकूलित। Tutorial देखें।

UTC में nanoseconds के एक प्रस्ताव के साथ समयरेखा पर एक पल के लिए, Instant का उपयोग करें। offset-from-UTC को देखते हुए, OffsetDateTime का उपयोग करें।time zone (ऑफसेट + विसंगतियों के लिए नियम) के लिए, ZonedDateTime का उपयोग करें, लेकिन इसकी प्रकृति से न्यूनतम परिभाषित नहीं किया गया है, न ही ZoneId है। समय-समय पर और समय क्षेत्र के बिना दिनांक-मूल्य के लिए, LocalDate का उपयोग करें। बिना किसी तारीख के और समय क्षेत्र के समय के लिए केवल मूल्य के लिए, LocalTime का उपयोग करें। समय क्षेत्र के बिना दिनांक-समय के लिए, LocalDateTime का उपयोग करें।

सावधानी: झंडा या विशेष अर्थ किसी तरह के रूप में इन मूल्यों का उपयोग कर से सावधान रहें। कई अन्य सॉफ्टवेयर पुस्तकालयों और डेटाबेस इन चरम मूल्यों का समर्थन नहीं कर सकते हैं।

एक झंडे या विशेष अर्थ जैसे गैर-शून्य "कोई मूल्य उपलब्ध नहीं है" के लिए, मैं सुझाव देता हूं कि एक मनमाना पल चुनना, लेकिन इस तरह के चरम पर जाने से बचें या तो पिछड़े या आगे समय तक पहुंचें। शायद Unix epoch reference date, यूटीसी में 1 9 70 का पहला पल, 1 9 70-01-0100: 00: 00Z। जावा में एक निरंतर के रूप में परिभाषित: Instant.EPOCH

0

Date के बाद से पदावनत के रूप में चिह्नित किया गया है, मैं एक और तरीका यह चारों ओर पाने के लिए नहीं होनी चाहिए सोचा, तो मैं तरीकों के कुछ देखा, और मैं इस तरह से पाया

जब भी मैंने इसे लिखा था, तब भी आप Long.MIN_VALUE का उपयोग कर सकते हैं, मैंने इसकी खोज नहीं की थी, और यहां तक ​​कि मुझे भी याद नहीं आया। enter image description here

+2

** गलत: ** 'java.util.Date' वर्ग * * * बहिष्कृत नहीं है (लेकिन होना चाहिए)। इसके कई तरीकों को हटा दिया गया है लेकिन पूरी कक्षा नहीं है।इसके अलावा, यह उत्तर मेरे दिमाग में बहुत अधिक मूल्य प्रदान नहीं करता है। –

+0

मैं बस फिर से जांचता हूं, और आप सही थे। इसके कुछ कन्स्ट्रक्टर एडीएन विधि हैं, लेकिन पूरी तरह से नहीं हैं – deadManN

संबंधित मुद्दे