एक जावा संग्रह करने के लिए एक डेटा संरचना परिवर्तित करने के लिए Clojure-मुहावरेदार भी तरह से, विशेष रूप से क्या है:परिवर्तित जावा संग्रह में Clojure डेटा संरचनाओं
- एक
java.util.ArrayList
{}
करने के लिए एकjava.util.HashMap
#{}
को[]
java.util.HashSet
()
java.util.LinkedList
क्या ऐसा करने के लिए कोई clojure.contrib लाइब्रेरी है?
उपयोग केस: मेरे संगठन में क्लोजर को कम करने के लिए, मैं क्लोजर में एक ऑल-जावा रीस्ट सर्वर के लिए यूनिट-टेस्ट सूट लिखने पर विचार कर रहा हूं। मैंने स्कैला में सूट का हिस्सा लिखा है, लेकिन लगता है कि क्लोजर बेहतर हो सकता है क्योंकि मैक्रो समर्थन बॉयलरप्लेट कोड को बहुत कम कर देगा (मुझे दर्जनों समान आरईएसटी सेवा कॉलों की जांच करने की आवश्यकता है)।
मैं डेटाबेस कनेक्शन का नकल करने के लिए EasyMock का उपयोग कर रहा हूं (क्या कोई बेहतर तरीका है?) और मेरे मॉक किए गए तरीकों को कॉलर्स को java.util.List<java.util.Map<String, Object>>
आइटम (डेटाबेस पंक्ति सेट का प्रतिनिधित्व करने) की आवश्यकता है। मैं [{ "first_name" "Joe" "last_name" "Smith" "date_of_birth" (date "1960-06-13") ... } ...]
संरचना में अपने नकली में पास कर दूंगा और इसे आवश्यक जावा संग्रह में परिवर्तित कर दूंगा ताकि इसे अपेक्षित प्रारूप में कॉलर पर वापस किया जा सके।
तरीकों वापस जाने के लिए की जरूरत है 'java.util.List', फिर वहाँ एक clojure के बाद से परिवर्तित करने की आवश्यकता नहीं वेक्टर * एक * सूची 'है। आपको केवल तभी परिवर्तित करना होगा यदि आवश्यक प्रकार एक विशिष्ट कार्यान्वयन वर्ग है, उदा। 'ArrayList'। –