Arrays 可以在scala中用用户输入填充数组吗?

Arrays 可以在scala中用用户输入填充数组吗?,arrays,scala,Arrays,Scala,我正在尝试以下操作,但出现错误“数组[Int]类型的变量arr不接受类型参数。” 对象重试\u arr { def main(参数:数组[字符串]) { var arr=新数组[Int](3) 对于(i在scala中,您可以像这样索引数组 arr(i) = num 在scala中,对数组进行如下索引 arr(i) = num 正如Simon已经指出的,您正在尝试将java语法应用于scala代码——在scala中,[]用于指定类型,为了访问数组元素,您应该使用(),例如xs(3) 我想解决这

我正在尝试以下操作,但出现错误“数组[Int]类型的变量arr不接受类型参数。”

对象重试\u arr
{
def main(参数:数组[字符串])
{
var arr=新数组[Int](3)

对于(i在scala中,您可以像这样索引数组

arr(i) = num

在scala中,对数组进行如下索引

arr(i) = num

正如Simon已经指出的,您正在尝试将java语法应用于scala代码——在scala中,[]用于指定类型,为了访问数组元素,您应该使用(),例如
xs(3)

我想解决这个问题最干净的方法是使用Array.fill方法:

object FillTheArray {
  def main(args: Array[String]) {
    val userInput = Array.fill(3) {
      scala.io.StdIn.readInt()
    }
  }
}

正如Simon已经指出的,您正在尝试将java语法应用于scala代码——在scala中,[]用于指定类型,为了访问数组元素,您应该使用(),例如
xs(3)

我想解决这个问题最干净的方法是使用Array.fill方法:

object FillTheArray {
  def main(args: Array[String]) {
    val userInput = Array.fill(3) {
      scala.io.StdIn.readInt()
    }
  }
}

更多的旁注,考虑这个更可变的方法,用不可变的对象,

val xs = for (i <- 1 to 3; num = scala.io.StdIn.readInt()) yield num 
同样地

(1 to 3).map(_ => scala.io.StdIn.readInt()).toArray
这是一个更简洁的代码


这与创建一个可变数组的更为迫切的方法相反,并且用用户输入更新每个位置(范围内的每个值所指)。

更多的旁注,考虑这个更可变的方法,具有不可变的对象,

val xs = for (i <- 1 to 3; num = scala.io.StdIn.readInt()) yield num 
同样地

(1 to 3).map(_ => scala.io.StdIn.readInt()).toArray
这是一个更简洁的代码

这与创建可变数组并使用用户输入更新每个位置(由范围中的每个值引用)的更为迫切的方法形成对比。

使用下面的语句

a(i)= scala.io.StdIn.readInt()
使用下面的语句

a(i)= scala.io.StdIn.readInt()

in-for循环不能从1到3,因为数组索引从0开始,介于0到2之间。否则将显示错误ArrayoutofBond异常

代码: var arr=新阵列

    for(i<- 0 to 2)
    {
        print("Enter number")
        val num = scala.io.StdIn.readInt()
        arr(i) = num
    }
    arr.foreach((element:Int)=> print(element + " "))
(i打印(元素+“”)的
for循环中的数组索引不能从1到3,因为数组索引从0开始,介于0到2之间。否则将显示错误arrayoutofBond异常

代码: var arr=新阵列

    for(i<- 0 to 2)
    {
        print("Enter number")
        val num = scala.io.StdIn.readInt()
        arr(i) = num
    }
    arr.foreach((element:Int)=> print(element + " "))
(i打印(元素+“”)的


虽然此代码可以回答问题,但提供有关此代码回答问题的原因和/或方式的附加上下文可提高其长期价值。虽然此代码可以回答问题,但提供有关此代码回答问题的原因和/或方式的附加上下文可提高其长期价值。