Java Array索引计数器递归

时间:2017-03-07 13:32:01

标签: java

如何重新分配java数组索引计数器?假设我有3个长度数组。如果我们从数组中获取第4个元素,编译器将使Index超出Bounds异常。我们可以避免这个异常,以便第4个元素应该给第一个元素。索引3应该给第0个元素,索引4应该给第1个元素。等

2 个答案:

答案 0 :(得分:2)

您可能想要使用模数运算符%

Object element = array[index % array.length];

答案 1 :(得分:2)

当然,使用模运算:

int safeIndex = index % array.length;

如果这个级别太低,那么有不同的库提供基于流的解决方案:

以下是使用GuavaFluentIterable

的版本
FluentIterable.from(Iterables.cycle(Arrays.asList(array))).get(index)

这里有一个使用JavaSlang个流:

Stream.of(array).cycle().drop(index).get();
据我所知,

Java 8流不提供此功能。