编写一个函数,接收不定长参数的整数值,输入出整数中最大值和所有的整数和 用scala
时间: 2024-09-27 18:05:44 浏览: 31
Scala编程详解 第9讲-Scala编程详解:数组操作之Array、ArrayBuffer以及遍历数组 共7页.pptx
在Scala中,你可以编写一个函数`findMaxAndSum`,它接受可变数量的整数作为参数,并返回最大的数字以及所有数字的总和。这里是一个简单的示例:
```scala
def findMaxAndSum(*args: Int): (Int, Int) = {
// 初始化最大值和总和为第一个参数
val maxVal = args.head
var sum = args.head
// 遍历剩余的参数,更新最大值和总和
for (num <- args.drop(1)) {
if (num > maxVal) {
maxVal = num
}
sum += num
}
// 返回一个元组,包含最大值和总和
(maxVal, sum)
}
// 示例用法
val numbers = List(5, 10, 3, 8, 1)
val result = findMaxAndSum(numbers:_*)
println(s"最大值: $result._1, 总和: $result._2") // 输出: 最大值: 10, 总和: 36
```
在这个函数中,`*args`表示可以接受任意数量的位置参数,`drop(1)`用于跳过第一个元素,从第二个开始遍历。
阅读全文