2010-07-26 5 views
4

Je viens de commencer à jouer dans Scala. J'ai une méthode qui accepte tableau de chaînes en entréeProblème de chaîne de caractères dans Scala

def Lambdatest(args:Array[String]) = args.foreach(arg=>println(arg)) 

Et j'ai créer un tableau de chaînes comme celui-ci

var arr=new Array[String](3) 
arr(0)="ram" 
arr(1)="sam" 
arr(2)="kam" 

Quand j'appelle Lambdatest (arr), il renvoie une erreur comme ci-dessous

scala> LambdaTest(arr)      
<console>:7: error: not found: value LambdaTest 
     LambdaTest(arr) 
    ^

Quelle est la raison ??

Et y a-t-il un moyen simple d'initialiser les tableaux de chaînes comme celui de C# ??

var strArr = new string[3] {"ram","sam","kam"}; 
+0

En plus: En C#, peut être défini le tableau ci-dessus même plus concise comme: 'var strArr = nouveau [] {" ram "," sam "," kam "};' – missingfaktor

+0

@ Rahuλ G, oui nous pouvons le faire .. :) – RameshVel

Répondre

13

Votre définition de la méthode et l'invocation ne sont pas les mêmes, vous définissez Lambdatest invoquer encore LambdaTest.

De plus, vous pouvez définir le tableau comme:

val arr = Array("ram", "sam", "kam") 

Votre code exécutera, vous fournissant corriger l'invocation de la méthode:

scala> Lambdatest(arr) 
ram 
sam 
kam 
+0

merci gpampara .. :) erreur idiote. ... – RameshVel

Questions connexes