kotlin - ojAlog - Kotlin 中的 ConvexSolver:二维数组
问题描述
我正在尝试实现一些示例,因为我计划探索 ojAlgo 以进行优化。我的问题很简单。
在 Java 中,我可以轻松编写:
PrimitiveDenseStore Q = PrimitiveDenseStore.FACTORY.rows(new double[][]{{2.0,0.0}, {0.0, 2.0}});
我尝试做与 kotlin 相同的事情:
val Q: Array<DoubleArray> = arrayOf(DoubleArray(2.0, 0.0), DoubleArray(2.0, 0.0))
var tmpQ = PrimitiveDenseStore.FACTORY.rows(Q)
但似乎 .rows 不能用我给出的论点来调用。
也许我做了一些愚蠢的事情,但我会很感激你的帮助。
谢谢你。
解决方案
DoubleArray
构造函数将数组大小作为第一个参数,这就是您的构造无效的原因。double[][]
Kotlin 中的类似物是Array<DoubleArray>
,没错,但它应该是这样构造的:
val Q: Array<DoubleArray> = arrayOf(doubleArrayOf(2.0, 0.0), doubleArrayOf(2.0, 0.0))
更新:
看起来rows
函数double[]... source
作为参数,所以在 Kotlin 中你可以使用扩展运算符:
val Q: Array<DoubleArray> = arrayOf(doubleArrayOf(2.0, 0.0), doubleArrayOf(2.0, 0.0))
var tmpQ = PrimitiveDenseStore.FACTORY.rows(*Q)
推荐阅读
- masstransit - MassTransit.AmazonSQS:是否可以在总线启动后将接收端点中已经存在的 SQS 队列订阅到 SNS 主题?
- python - AttributeError:读取 TIFF 图像时“解码”
- php - JSON未显示此图像
- coldfusion - 使用电子表格函数,我们可以通过复制同一工作表中另一行的格式属性来创建新行吗?
- html - 标题是垂直书写而不是水平书写 HTML
- python - 实现 word2vec,但我得到了错误,那个词 car_NOUN 在词汇表中
- mysql - 我想查询 moodle 数据库以将记录提取到同步帐户,但“不存在的地方”返回语法错误
- drools - 将类对象传递给 Drools 规则 (drt) 文件
- javascript - 根据键名选择性地解构对象
- regex - 如何为这场比赛制作正则表达式