2014-10-27 8 views
23

जावा 8 ChronoUnit शुरू की जो काफी हद तक TimeUnit जावा 5.कनवर्टिंग TimeUnit को ChronoUnit में कनवर्ट करना?

में पेश करने के बराबर है वहाँ ChronoUnit करने के लिए एक TIMEUNIT परिवर्तित करने के लिए एक मौजूदा समारोह है? (हाँ, मुझे पता है कि अपना खुद का लिखना कैसे है)

+1

वाई कहां ध्यान रखना चाहिए कि प्रत्येक 'ChronoUnit' 'TimeUnit' के लिए मैप करने योग्य नहीं है, उदाहरण के लिए' माह '। इस मामले में आप क्या करेंगे? –

+1

@MenoHochschild, अच्छा बिंदु। मैं वास्तव में केवल एक तरफा मैपिंग में दिलचस्पी थी। मैं तदनुसार सवाल अपडेट करूंगा। – Gili

उत्तर

7

विकास के दौरान एक चरण में, आप TimeUnit से Duration बना सकते हैं। https://github.com/ThreeTen/threeten/blob/3b4c40e3e7a5dd7a4993ee19e1c156e4e65432b3/src/main/java/javax/time/Duration.java#L293 हालांकि इस जावा SE में कोड के अंतिम संस्करण 8.

मैं रूपांतरण करने के लिए कोई पहले से पैक दिनचर्या के बारे में पता नहीं है के लिए हटा दिया गया था, लेकिन यह शायद Temporals में ThreeTen-Extra में जोड़ा जाना चाहिए।

अद्यतन: यह https://github.com/ThreeTen/threeten-extra/issues/22

+0

स्पष्टीकरण के लिए धन्यवाद। क्या भविष्य में कोर एपीआई में इसे जोड़ने की योजना है? – Gili

+0

मेरे पास इसके लिए कोई तत्काल योजना नहीं है, लेकिन मैं ऐसा करने के लिए समझ में नहीं आता। – JodaStephen

16

से तय हुई थी जावा 9

जावा 9 में TimeUnit एपीआई बढ़ाया और TimeUnit और ChronoUnit के बीच कन्वर्ट करने के लिए अनुमति देता है गया:

TimeUnit.toChronoUnit() // returns a ChronoUnit 
TimeUnit.of(ChronoUnit chronoUnit) // returns a TimeUnit 

देखें: JDK-8141452

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