2016-03-23 7 views
-1

私はこのScalaのコードを持っている:Scalaの配列は、ArrayIndexOutOfBoundsException:

val line = "DB:move" 
val str = line.split(":")  
println(line.split(':')(1)) 

インデックスは1 1あるとき、私は全然0としては問題がインデックスを入れていないとき

java.lang.ArrayIndexOutOfBoundsException: 1 

を取得しますが。

+1

ラインを印刷できますか? – eliasah

+0

あなたは私を冗談にしなければなりません。そのライン分割はそのエラーを生成することはできません! – eliasah

+0

は私のために罰金作品: '' 'ヴァルライン= "DB:移動" ヴァルSTR = line.split( ":") のprintln(line.split( ':')(1)) //終了ペーストモード、今解釈します。 move 行:String = DB:move str:Array [文字列] =配列(DB、移動) '' ' –

答えて

0

あなたは、その文字列でない文字/文字列に文字列を分割するときは、単一​​の要素を含む配列返されます - 最初の文字列を:

scala> "asdf".split(":") 
res0: Array[String] = Array(asdf) 

配列は0とてもアクセスし、ベースとされていますインデックス0の最初の要素は正常ですが、インデックス1にスローされます。

関連する問題