Java中定义循环数组的方法是使用模块运算符%,将索引值对数组长度取余,得到循环后的索引。循环数组的特点是当索引超出边界时,会自动循环到数组开头。
Java 中定义循环数组的方法
在 Java 中,可以使用模块运算符 % 来定义循环数组。循环数组是一种特殊的数组,当索引超出数组边界时,它会自动循环到数组的开头。
定义方法:
int[] arr = new int[size];
for (int i = 0; i < arr.length; i++) {
arr[i] = i + 1; // 初始化数组元素
}
int index = 5; // 索引值
System.out.println(arr[index % arr.length]); // 输出 arr[5 % 5],即 arr[0]工作原理:

arr[index % arr.length] 将 index 取模 arr.length,从而得到循环后的索引。index 超出数组边界(即 index >= arr.length),index % arr.length 会返回 index 对 arr.length 取模后的余数,即循环后的索引。index 在数组边界内(即 index ),index % arr.length 就会返回原始索引。
示例:
考虑一个大小为 5 的循环数组 arr,其中元素值依次为 [1, 2, 3, 4, 5]。
arr[0] 是第一个元素,索引为 0。arr[4] 是最后一个元素,索引为 4。arr[5] 超出数组边界,使用循环数组特性,arr[5 % 5] 返回 arr[0]。arr[-1] 低于数组起始索引,使用循环数组特性,arr[-1 % 5] 返回 arr[4]。注意: