खोज…


परिचय

क्लोजर में एक परमाणु एक चर है जिसे आपके कार्यक्रम (नाम स्थान) में बदला जा सकता है। क्योंकि क्लोजर में अधिकांश डेटा प्रकार अपरिवर्तनीय (या अपरिवर्तनीय) हैं - आप इसे पुनर्परिभाषित किए बिना किसी संख्या के मूल्य को बदल नहीं सकते हैं - क्लॉजेर प्रोग्रामिंग में परमाणु आवश्यक हैं।

एक परमाणु को परिभाषित करें

एक परमाणु को परिभाषित करने के लिए, एक साधारण def उपयोग करें, लेकिन इससे पहले एक atom फ़ंक्शन जोड़ें, जैसे:

(def counter (atom 0))

यह मान 0 का एक atom बनाता है। परमाणु किसी भी प्रकार के हो सकते हैं:

(def foo (atom "Hello"))
(def bar (atom ["W" "o" "r" "l" "d"]))

एक परमाणु का मूल्य पढ़ें

एक परमाणु का मान पढ़ने के लिए, बस परमाणु का नाम रखो, इसके पहले एक @ साथ:

@counter ; => 0

एक बड़ा उदाहरण:

(def number (atom 3))
(println (inc @number))
;; This should output 4

एक परमाणु का मूल्य अद्यतन करें

एक परमाणु को बदलने के लिए दो कमांड हैं, swap! और reset!swap! आदेश दिया जाता है, और परमाणु को उसकी वर्तमान स्थिति के आधार पर बदल देता है। reset! मूल परमाणु का मूल्य क्या था, इसकी परवाह किए बिना, परमाणु के मूल्य को पूरी तरह से बदल देता है:

(swap! counter inc) ; => 1
(reset! counter 0) ; => 0

यह उदाहरण परमाणुओं का उपयोग करके 2 की पहली 10 शक्तियों को आउटपुट करता है:

(def count (atom 0))

(while (< @atom 10)
  (swap! atom inc)
  (println (Math/pow 2 @atom)))


Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow