You'd better try to figure it out by yourself.
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
int[] list = {0,1,2,3};
int num = 5;
ArrayList<int[]> results = getPairs(list, num);
for (int[] tmp : results) {
System.out.println("(" + tmp[0] + ","+ tmp[1] + ")");
}
}
private static ArrayList<int[]> getPairs(int[] list, int num) {
ArrayList<int[]> results = new ArrayList<int[]>();
int len = list.length;
int index = 0;
for (int i = 0; i < num; i++) {
if ((index + 1) >= len) {
results.add(new int[]{list[index], list[0]});
index = 0;
}
else {
results.add(new int[]{list[index], list[index + 1]});
++index;
}
}
return results;
}
}
Here is the ouput:
(0,1)
(1,2)
(2,3)
(3,0)
(0,1)