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

关于Kotlin Multik库导入规则与多维数组索引的技术问题

关于Multik库使用的两个问题解答

1. 为何必须同时导入mk和zeros才能调用mk.zeros<Double>(4, 3)?

Multik的API设计里,mk是核心的API入口实例,但zeros并不是mk本身的成员方法,而是扩展函数。这些创建数组的扩展函数(比如zeros、ones、full等)都定义在org.jetbrains.kotlinx.multik.api包下。Kotlin中,扩展函数必须显式导入后才能被编译器识别,仅导入mk的话,编译器不知道它有zeros这个扩展方法,所以会提示未解析引用。

简单说:mk是功能主体,zeros是给mk额外添加的创建数组的功能,得把这个功能也导入进来才能用。

2. 如何正确索引Multik数组的元素?

Multik的多维数组不支持直接用res3[0,0]这种双参数索引写法(Kotlin的[]运算符默认只支持单个参数)。你有两种正确的索引方式:

  • 调用get方法并传入多个索引参数:res3.get(0, 0)
  • 对于二维数组,也可以用链式索引:res3[0][0](先取第0行的一维数组,再取该数组的第0个元素)

如果是更高维度的数组,比如三维,同样可以用res3.get(0, 1, 2)或者链式索引res3[0][1][2]。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 00:42:32