Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास · पाठ

Java संग्रह और ऐरे के साथ काम करना

अंतःसंचालन का अर्थ अक्सर Clojure के अपरिवर्तनीय संग्रहों और Java के परिवर्तनशील संग्रहों के बीच जाना होता है। यह पाठ Clojure से रूपांतरण, दोहराव और मूलभूत ऐरे को संभालना सिखाता है।

पाठ 4, कुल 4 में से13 चरण

Java संग्रह और ऐरे के साथ काम करना, CoddyKit पर Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास का एक निःशुल्क पाठ है। यह 4 में से 4वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

संग्रहों की दो दुनियाएँ

Clojure संग्रह अपरिवर्तनीय और स्थायी होते हैं; Java संग्रह सामान्यतः परिवर्तनीय होते हैं। आपसी उपयोग के लिए इनके बीच मानों को सावधानी से स्थानांतरित करना आवश्यक है।

Java संग्रह Seqable होते हैं

अधिकांश Java संग्रह Iterable लागू करते हैं, इसलिए Clojure के seq फ़ंक्शन उन पर सीधे काम करते हैं।

(def jlist (java.util.ArrayList. [1 2 3]))
(println (map inc jlist))

Java सूची बनाना

आपसी उपयोग वाले method कॉल से Java सूची बनाएँ और उसमें बदलाव करें।

(let [l (java.util.ArrayList.)]
  (.add l "a")
  (.add l "b")
  (println l))

Clojure वेक्टर में बदलना

अपरिवर्तनीय Clojure संरचना पाने के लिए Java संग्रह को vec या into में लपेटें।

(def jlist (java.util.ArrayList. [10 20 30]))
(println (vec jlist))
(println (into [] jlist))

Clojure Map से Java Map

Clojure map पहले से ही java.util.Map है, इसलिए इसे ऐसे Java API में दिया जा सकता है जिसे इसकी अपेक्षा हो। परिवर्तनीय प्रति के लिए HashMap बनाएँ।

(def m {"k" 1})
(def jmap (java.util.HashMap. m))
(.put jmap "k2" 2)
(println jmap)

प्रिमिटिव ऐरे

Java API को अक्सर प्रिमिटिव ऐरे चाहिए होते हैं। उन्हें int-array और double-array जैसे प्रकार-विशिष्ट निर्माताओं से बनाएँ।

(def arr (int-array [1 2 3 4]))
(println (alength arr))
(println (aget arr 2))

ऐरे पढ़ना और लिखना

इंडेक्स के आधार पर ऐरे के स्थानों को पढ़ने के लिए aget और लिखने के लिए aset का उपयोग करें।

(def arr (int-array 3))
(aset arr 0 99)
(println (vec arr))

ऐरे को फिर से Seqs में बदलना

Clojure के अनुक्रम फ़ंक्शन से ऐरे को संसाधित करने के लिए उसे seq या vec में लपेटें।

(def arr (double-array [1.5 2.5 3.5]))
(println (reduce + (seq arr)))

प्रदर्शन के लिए प्रकार संकेत

प्रकार संकेत जोड़ें, ताकि कंपाइलर बार-बार चलने वाले ऐरे लूप में reflection से बच सके।

(defn sum-ints [^ints xs]
  (areduce xs i acc 0 (+ acc (aget xs i))))

परिवर्तनीयता के साझा संदर्भ से सावधान रहें

जब आप किसी परिवर्तनीय Java संग्रह को दूसरे कोड को देते हैं, तो दोनों पक्षों को उसमें किए गए बदलाव दिखाई देते हैं। अलगाव आवश्यक होने पर उसे अपरिवर्तनीय Clojure संरचना में कॉपी करें।

सीमा चुनें

परिवर्तनीय Java संग्रहों को आपसी उपयोग की सीमा तक रखें और जितनी जल्दी संभव हो उन्हें अपरिवर्तनीय Clojure डेटा में बदल दें, ताकि आपके बाकी कोड का कार्यात्मक स्वरूप बना रहे।

त्वरित जाँच

Java संग्रहों के आपसी उपयोग संबंधी अपने ज्ञान की जाँच करें।

पुनरावलोकन

आपने सीखा कि Java संग्रह seqable होते हैं, Java और Clojure संग्रहों के बीच कैसे बदला जाता है, प्रिमिटिव ऐरे कैसे बनाए और पढ़े जाते हैं, प्रकार संकेत कैसे जोड़े जाते हैं, और परिवर्तनीयता को आपसी उपयोग की सीमा पर कैसे रखा जाता है।

शुरुआत निःशुल्क

एआई शिक्षक के साथ Clojure सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
12
पाठ
48

अक्सर पूछे जाने वाले प्रश्न

क्या “Java संग्रह और ऐरे के साथ काम करना” पाठ निःशुल्क है?

हाँ—“Java संग्रह और ऐरे के साथ काम करना” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“Java संग्रह और ऐरे के साथ काम करना” में मैं क्या सीखूँगा?

अंतःसंचालन का अर्थ अक्सर Clojure के अपरिवर्तनीय संग्रहों और Java के परिवर्तनशील संग्रहों के बीच जाना होता है। यह पाठ Clojure से रूपांतरण, दोहराव और मूलभूत ऐरे को संभालना सिखाता है। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 4वाँ पाठ है।

“Java संग्रह और ऐरे के साथ काम करना” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. Clojure से Java को कॉल करना
  2. Java इंटरफ़ेस लागू करना
  3. Java लाइब्रेरी और टूल का लाभ उठाना
  4. Java संग्रह और ऐरे के साथ काम करना
← Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास पर वापस जाएँ