Go:
स्ट्रिंग का इंटरपोलेशन
कैसे करें:
Go में, स्ट्रिंग इंटरपोलेशन आमतौर पर fmt
पैकेज का उपयोग करके हासिल किया जाता है, विशेष रूप से Sprintf
फंक्शन के साथ, जो आपको फॉर्मेटिंग वर्ब्स को निर्दिष्ट करके एक स्ट्रिंग में वेरिएबल्स को इंजेक्ट करने देता है। वर्ब्स फॉर्मेट स्ट्रिंग में प्लेसहोल्डर हैं और दिए गए वेरिएबल्स के मूल्यों द्वारा प्रतिस्थापित किए जाते हैं। आप इसे किस प्रकार उपयोग करेंगे:
package main
import (
"fmt"
)
func main() {
name := "Jane"
age := 28
// स्ट्रिंग इंटरपोलेशन के लिए Sprintf का उपयोग
message := fmt.Sprintf("नमस्ते, मेरा नाम %s है और मैं %d वर्ष का हूँ।", name, age)
fmt.Println(message) // आउटपुट: नमस्ते, मेरा नाम Jane है और मैं 28 वर्ष का हूँ।
}
नोट करें कि %s
स्ट्रिंग्स के लिए और %d
इंटेजर्स के लिए उपयोग किया गया है। fmt
पैकेज दस्तावेज़ीकरण विभिन्न डेटा प्रकारों के लिए फॉर्मेटिंग वर्ब्स की एक व्यापक सूची प्रदान करता है।
गहराई में:
स्ट्रिंग इंटरपोलेशन की अवधारणा कई प्रोग्रामिंग भाषाओं में मौजूद है, हालांकि विभिन्न सिंटेक्स और क्षमताओं के साथ। Go में, जबकि fmt
पैकेज का Sprintf
फंक्शन सबसे अधिक सामान्य रूप से उपयोग किया गया दृष्टिकोण है, यह हमेशा सबसे कुशल नहीं होता, विशेष रूप से सरल संयोजनों के लिए या जब उच्च प्रदर्शन-संवेदनशील कोड के भीतर कार्य कर रहे होते हैं।
fmt
पैकेज रनटाइम पर वेरिएबल्स के प्रकारों की गतिशील रूप से व्याख्या करने के लिए प्रतिबिंब का उपयोग करता है, जो, जबकि लचीला, ओवरहेड लाता है। जहाँ प्रदर्शन महत्वपूर्ण है, सीधी स्ट्रिंग संयोजन या strings.Builder
प्रकार बेहतर विकल्प पेश कर सकते हैं। सीधी संयोजन सरल है लेकिन अनेक वेरिएबल्स के साथ अव्यावहारिक हो सकती है। strings.Builder
, दूसरी ओर, लूप में या जब कई वेरिएबल्स से निपटते समय जटिल स्ट्रिंग्स को बनाने के लिए एक अधिक प्रदर्शनकारी और पठनीय तरीका प्रदान करता है:
var sb strings.Builder
sb.WriteString("नमस्ते, मेरा नाम है ")
sb.WriteString(name)
sb.WriteString(" और मैं ")
sb.WriteString(strconv.Itoa(age))
sb.WriteString(" वर्ष का हूँ।")
message := sb.String()
fmt.Println(message) // पहले की तरह ही आउटपुट देता है
अंततः, fmt.Sprintf
, सीधी संयोजन, और strings.Builder
के बीच चयन आपके एप्लिकेशन की विशिष्ट आवश्यकताओं पर निर्भर करता है, जैसे कि निर्मित होने वाली स्ट्रिंग की जटिलता और प्रदर्शन विचार।