繁体   English   中英

如何使用Scala / Java中的索引从另一个数组分配一个数组的元素?

[英]How to assign elements of an array from another array using indexes in Scala/Java?

我想将一个数组的一部分分配给Scala中另一个数组的一部分。 例如,我想做以下Python代码的Scala或Java等效项。

x[i:j] = y[k:l]

如何在Scala甚至Java中做到这一点?

您可以使用组合.patch.slice

scala> val a = Array.range(1, 20)
a: Array[Int] = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)

scala> val b = Array.range(30, 50)
b: Array[Int] = Array(30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49)

scala> a.patch(5, b.slice(5, 10), 5)
res5: Array[Int] = Array(1, 2, 3, 4, 5, 35, 36, 37, 38, 39, 11, 12, 13, 14, 15, 16, 17, 18, 19)

.slice的参数为:

  • 从开始的元素( i在您的python示例中)
  • 要插入的数组( y[k:l] ,此处使用.slicekl进行选择)

  • 数组中要替换的元素的数量(当i:j小于k:l时,您的示例发生了什么,但我想这里是ji

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM