如何在Scala中访问双通道索引的JsArray?

时间:2017-05-09 08:38:01

标签: scala playframework

在Play 2.3框架中,响应被解析为JSON。鉴于以下数据:

{"content": [1, 2, 3, 4, 5, 6]}

我试图通过

访问数组的所有其他元素(即1, 3, 5
// Scala
val array = (response \ "content").as[JsArray].value
for (i <- 0 until array.size / 2)
  println(array(i * 2))

但是array(i*2)引发了错误。通过索引访问JsArray的规范方法是什么?

1 个答案:

答案 0 :(得分:1)

您可以尝试:

for(i <- 0 until array.size if i % 2 == 0)
  println(array(i * 2))

更好的方法是循环遍历元素:

for((a,i) <- array.zipWithIndex if i % 2 == 0)
  println(a)