स्काला में यह एक Seq [चार] के रूप में यह इलाज एक स्ट्रिंग की invididual पात्रों पर आधारित पैटर्न तैयार संभव है मिलान पैटर्न।रूप Seq [चार] एक स्ट्रिंग
इस सुविधा का एक उदाहरण A Tour of Scala
में बताया गया है यह वहाँ इस्तेमाल किया उदाहरण कोड है:
object RegExpTest1 extends Application {
def containsScala(x: String): Boolean = {
val z: Seq[Char] = x
z match {
case Seq('s','c','a','l','a', rest @ _*) =>
println("rest is "+rest)
true
case Seq(_*) =>
false
}
}
}
समस्या मैं इस के साथ है टुकड़ा की तीसरी पंक्ति है :
val z: Seq[Char] = x
इस प्रकार का कलाकार क्यों आवश्यक है? क्या किसी स्ट्रिंग को सभी परिस्थितियों में एक सेक [चर] की तरह व्यवहार नहीं करना चाहिए (जिसमें पैटर्न मिलान शामिल होगा)? हालांकि, इस रूपांतरण के बिना, कोड स्निपेट काम नहीं करेगा।
भावना का एक बहुत बनाता है और मूल रूप से मैं क्या अनुमान लगा दिया गया था है। हालांकि, मुझे निहित कनवर्टर नहीं मिला। इस पर ध्यान दिलाने के लिए धन्यवाद। तो मूल रूप से, यह जावा इंटरऑपरेबिलिटी के लिए एक बड़ी छूट है, कुछ प्रकार की ध्वनि को त्याग देता है। –
कोई भी प्रकार की ध्वनि खो जाती है।लागू रूपांतरण केवल एक फ़ंक्शन कॉल डालने वाला कंपाइलर है, कुछ वैल जेड: सेक [चर] = स्ट्रिंग 2 सेक (x) –