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

Kotlin中如何从标准输入(stdin)获取Int类型数组并传入函数

实现代码

你可以直接使用如下代码完成读取stdin内容并转为数组传入目标函数:

fun myFunc(items: Array<Int>) {
    // 你原有逻辑保留即可
}

fun main() {
    // 读取标准输入的一行内容
    val input = readLine() ?: return
    // 移除首尾的方括号,按逗号分割后处理每个元素
    val arr = input.removeSurrounding("[", "]")
        .split(",")
        .map { it.trim().toInt() }
        .toTypedArray()
    // 调用目标函数
    myFunc(arr)
}

逻辑说明

  • readLine() 用于读取标准输入的一行内容,空输入会直接终止流程避免报错
  • removeSurrounding("[", "]") 直接移除输入字符串首尾的方括号,不用手动处理索引
  • 分割后的每个元素先调用trim()去除前后空格,再转为Int类型,兼容输入中逗号后带空格的格式
  • 最后用toTypedArray()将List转为要求的Array<Int>类型传入myFunc

如果需要兼容非法输入格式的场景,可以加上异常捕获:

fun main() {
    val input = readLine() ?: return
    try {
        val arr = input.removeSurrounding("[", "]")
            .split(",")
            .map { it.trim().toInt() }
            .toTypedArray()
        myFunc(arr)
    } catch (e: NumberFormatException) {
        println("输入格式不符合要求,请输入[-5, 0, 4]格式的整数数组")
    }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 15:15:02