我有一串字符串。我想提供一个方法参数 x,然后以 x 为一组流式传输字符串,然后可以将其收集到一个集合中。
因此,如果 x=4 并且流大小为 8,那么我将有两组包含 4 个元素。对于这 4 个元素集中的每一组,我可以调用 ForEach 并对其执行其他操作,在上面的示例中,对于每个 4 个元素集,forEach 将调用两次 1。
我不太确定这是否是你要问的。
所以你有一些数据(比如整数(,你想把它放到多个集合中,每个集合都有 X 元素。
也许您可以使用 2D 阵列?我手头没有JDK,所以我只是写一些伪代码。例如:
int[][] MyArray = new int[MAX_BUFFER][X]
然后你使用 while 循环
int a = 0, b = 0;
While(!instream.empty){
int t = instream.next;
MyArray[a][b]=t;
b++;
if(b>=X){
a++;
b=0;
}
}
我突然明白数组列表可能对您更好。
ArrayList<int[]> MyArray = new ArrayList<int[]>()
int a = 0;
int temparray= new int[X];
While(!instream.empty){
int t = instream.next;
temparray[a]=t;
a++;
if(a>=X){
a=0;
MyArray.add(temparray);
}
}
if(a>0){//So there are some data left in the temp array;
MyArray.add(temparray);
}