Scala:使用for循环向sortedSet或array添加值

Scala:使用for循环向sortedSet或array添加值,scala,Scala,对于特定的应用程序,我需要使用For循环将未排序数组中的整数添加到空的sortedSet。(或到已排序的新数组)。我知道这可以避免循环,但我想在这个例子中使用循环 这一准则似乎大体正确: def minFor(r: Array[Int]): Int = { var itsSorted = collection.SortedSet.empty[Int] for(i <- 0 to r.length) itsSorted = itsSorted + i } def

对于特定的应用程序,我需要使用For循环将未排序数组中的整数添加到空的
sortedSet
。(或到已排序的新数组)。我知道这可以避免循环,但我想在这个例子中使用循环

这一准则似乎大体正确:

def minFor(r: Array[Int]): Int = {
    var itsSorted = collection.SortedSet.empty[Int]
    for(i <- 0 to r.length)
      itsSorted = itsSorted + i
}
def minFor(r:Array[Int]):Int={
var itsorted=collection.SortedSet.empty[Int]

for(i你的函数
minFor
应该返回
Int
。但是你在函数中的最后一个语句

for(i <- 0 to r.length)
  itsSorted = itsSorted + i

谢谢-我知道单位类型不正确。但我不知道如何正确返回所需的数据类型-排序数组或集合。我是Scala的新手。我已更新了答案。如果只需要返回最小元素,您可以将其sorted.head放入,如果数组可以为空,则将其sorted.head放入。
for(i <- 0 to r.length)
  itsSorted = itsSorted + i
def minFor(r: Array[Int]) = {
  var itsSorted = collection.SortedSet.empty[Int]
  for(i <- 0 to r.length)
    itsSorted = itsSorted + i
  itsSorted
}