सिंगल ''और डबल कोट्स में अंतर होता है""एक स्ट्रिंग का मूल्यांकन करने के लिए रूबी में में ।
प्रारंभ में, मैं स्पष्ट करना चाहूंगा कि स्ट्रिंग के शाब्दिक रूप में जो भी सिंगल या डबल के बीच है कोट्स के होता है, उसे एक स्ट्रिंग ऑब्जेक्ट के रूप में मूल्यांकन किया जाता है, जो रूबी स्ट्रिंग वर्ग का एक उदाहरण है।
इसलिए, 'stackoverflow'और "stackoverflow"दोनों स्ट्रिंग क्लास के उदाहरणों का मूल्यांकन करेंगे जिनमें कोई अंतर नहीं है ।
अंतर
स्ट्रिंग्स (सिंगल या डबल कोट्स) के दो शाब्दिक रूपों के बीच आवश्यक अंतर यह है कि डबल उद्धरण से बचने के दृश्यों की अनुमति मिलती है जबकि एकल उद्धरण नहीं!
सिंगल कोट्स द्वारा बनाया गया एक स्ट्रिंग शाब्दिक स्ट्रिंग इंटरपोलेशन का समर्थन नहीं करता है और दृश्यों से बचता नहीं है।
एक साफ उदाहरण है:
"\n" # will be interpreted as a new line
जहाँ तक
'\n' # will display the actual escape sequence to the user
एकल उद्धरण के साथ इंटरपोलिंग बिल्कुल काम नहीं करता है:
'#{Time.now}'
=> "\#{Time.now}" # which is not what you want..
सर्वश्रेष्ठ प्रणालियां
जैसा कि रूबी लिंटर्स में से अधिकांश का सुझाव है कि अपने तार के लिए एकल उद्धरण शाब्दिक का उपयोग करें और प्रक्षेप / भागने के क्रम के मामले में डबल वालों के लिए जाएं।