Java-分步切割任何数组 [英] Java - Slice any array at steps

查看:109
本文介绍了Java-分步切割任何数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在python中,我们可以执行以下操作:

In python we are able to do the following:

 array = [0,1,2,3,4,5,6,7,8,9,10]
 new_array= array[::3]
 print(new_array)
>>>[0,3,6,9]

在Java中是否有与此等效的东西?我一直在寻找这种类型的数组切片,但是我没有运气.任何帮助都会很棒,谢谢!

Is there an equivalent to this in Java? I have been looking for this type of array slicing, but I have had no luck. Any help would be great, Thanks!

推荐答案

如果您使用的是Java 8,则可以利用流并执行以下操作:

If you are using Java 8, then you can make use of streams and do the following:

int [] a = new int [] {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

// filter out all indices that evenly divide 3
int [] sliceArr = IntStream.range(0, a.length).filter(i -> i % 3 == 0)
    .map(i -> a[i]).toArray();

System.out.println(Arrays.toString(sliceArr));

输出: [0,3,6,9]

Outputs: [0, 3, 6, 9]

这篇关于Java-分步切割任何数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆