2009-01-28 18 views
7

मैं बहुत सारे स्कैला मानचित्रों का उपयोग करता हूं, कभी-कभी मैं उन्हें एक विरासत जावा एपीआई के लिए एक मानचित्र के रूप में पास करना चाहता हूं जो java.util.Map चाहता है (और मुझे कोई परवाह नहीं है अगर यह किसी भी बदलाव को फेंकता है)।क्या किसी भी मानचित्र से java.util.Map में कनवर्ट करने के लिए स्कैला में कोई तरीका है?

उत्तर

7

एक उत्कृष्ट पुस्तकालय मैं ने पाया है कि इस का एक बेहतर काम करता है:

http://github.com/jorgeortiz85/scala-javautils

(बुरा नाम, भयानक पुस्तकालय)। आप जिस दिशा में जाना चाहते हैं उसके आधार पर आप स्पष्ट रूप से .asJava या .asScala को आमंत्रित करते हैं। कोई आश्चर्य नहीं।

2

स्कैला जावा संग्रह के लिए रैपर प्रदान करता है ताकि उन्हें स्कैला संग्रह के रूप में उपयोग किया जा सके लेकिन दूसरी तरफ नहीं। ऐसा कहा जा रहा है कि शायद अपना खुद का रैपर लिखना मुश्किल नहीं होगा और मुझे यकीन है कि यह समुदाय के लिए उपयोगी होगा। यह सवाल नियमित आधार पर आता है।

+0

मैं बस ऐसा कर सकता हूं। –

1

यह question and answer इस सटीक समस्या और संभावित समाधानों पर चर्चा करता है। यह पारदर्शी रूपांतरणों के खिलाफ सलाह देता है क्योंकि उनके पास बहुत अजीब दुष्प्रभाव हो सकते हैं। यह इसके बजाय scala-javautils का उपयोग करने की वकालत करता है। मैं उन्हें कुछ महीनों के लिए एक बड़ी परियोजना में उपयोग कर रहा हूं और उन्हें बहुत विश्वसनीय और उपयोग करने में आसान पाया है।

+0

मैं सहमत हूं - पारदर्शी रूपांतरण अक्सर अधिक परेशानी का कारण बनते हैं, फिर वे सहेजते हैं (यह कुल धो नहीं है, कभी-कभी वे आसान होते हैं)। जावा सरणी पर सेक विधियों के साथ, और अंततः अन्य संग्रह प्रकार थोड़े अच्छे हैं, लेकिन इससे परे, मुझे स्कैला-जवाउटील्स पसंद हैं। इच्छा है कि मैं इसके बारे में पहले कुछ पता चला था। –

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

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