将一个数组按照固定大小进行拆分成数组的方法
如下所示:
/**
*ArraySplit.java
*Copyright(C)2014
*/
packagecom.udpdemo.test2;
importjava.util.ArrayList;
importjava.util.List;
/**
*
*@authorcuiran
*@version1.0.0
*/
publicclassArraySplit{
/**
*@paramargs
*
*/
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
int[]ary={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20};//要分割的数组
intsplitSize=5;//分割的块大小
Object[]subAry=splitAry(ary,splitSize);//分割后的子块数组
for(Objectobj:subAry){//打印输出结果
int[]aryItem=(int[])obj;
for(inti=0;i<aryItem.length;i++){
System.out.print(aryItem[i]+",");
}
System.out.println();
}
}
/**
*splitAry方法<br>
*@paramary要分割的数组
*@paramsubSize分割的块大小
*@return
*
*/
privatestaticObject[]splitAry(int[]ary,intsubSize){
intcount=ary.length%subSize==0?ary.length/subSize:ary.length/subSize+1;
List<List<Integer>>subAryList=newArrayList<List<Integer>>();
for(inti=0;i<count;i++){
intindex=i*subSize;
List<Integer>list=newArrayList<Integer>();
intj=0;
while(j<subSize&&index<ary.length){
list.add(ary[index++]);
j++;
}
subAryList.add(list);
}
Object[]subAry=newObject[subAryList.size()];
for(inti=0;i<subAryList.size();i++){
List<Integer>subList=subAryList.get(i);
int[]subAryItem=newint[subList.size()];
for(intj=0;j<subList.size();j++){
subAryItem[j]=subList.get(j).intValue();
}
subAry[i]=subAryItem;
}
returnsubAry;
}
}
以上这篇将一个数组按照固定大小进行拆分成数组的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。