在Java中屏蔽数组,就像python中的numpy一样



有没有一种优雅的方法可以在Java中选择数组的元素,类似于Python中的Numpy?

mask = np.array([True, False, False, True])
myArray = np.array([4, 3, 1, 2])
result = myArray[mask]
print(result)

这会给我 [4, 2]

现在我想在 Java 中做同样的事情(不必编写很多行代码(。

Java中没有这样的内置机制,数组实用程序类也没有。

int[] array = {4, 3, 1, 2};
boolean[] mask = {true, false, false, true};
int[] result = IntStream.range(0, array.length)
.filter(i -> mask[i])
.map(i -> array[i])
.toArray();

最新更新