You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kotlin中如何不使用循环高效对Queue队列所有元素求和

Kotlin 队列无循环求和方案

Kotlin 标准库为所有实现了 Iterable 接口的集合类内置了优化过的聚合函数,java.util.Queue 本身符合该接口约定,因此直接调用内置函数即可实现无手动循环的求和操作,底层实现经过编译器优化,执行效率和手写循环一致。

针对Int类型队列的最简实现

你给出的代码示例中队列元素均为Int类型,直接调用 sum() 方法即可:

import java.util.Queue
import java.util.LinkedList

fun main() {
    // 注意补全Queue的泛型声明,避免类型擦除导致的编译问题
    val queue: Queue<Int> = LinkedList(arrayListOf(353, 343, 5343, 3434))
    val sumResult = queue.sum()
    println(sumResult) // 输出结果为 9473
}

通用适配所有数值类型的实现

如果队列元素是Long、Double等其他数值类型,可以使用 sumOf() 方法自定义映射规则,适配所有可求和场景:

// 示例:Double类型队列求和
val doubleQueue: Queue<Double> = LinkedList(listOf(1.5, 2.3, 4.7))
val sumResult = doubleQueue.sumOf { it }

注意:上述方法只会遍历读取队列元素做计算,不会移除队列中的任何元素,不会改变原队列的结构。


内容的提问来源于stack exchange,提问作者Saurabh Dhage

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.17 11:54:05