将一个数组按照固定大小进行拆分成数组的方法
更新时间:2016年11月16日 09:11:19 投稿:jingxian
下面小编就为大家带来一篇将一个数组按照固定大小进行拆分成数组的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
如下所示:
/**
* ArraySplit.java
* Copyright(C) 2014
*/
package com.udpdemo.test2;
import java.util.ArrayList;
import java.util.List;
/**
*
* @author cuiran
* @version 1.0.0
*/
public class ArraySplit {
/**
* @param args
*
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] ary = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20};//要分割的数组
int splitSize = 5;//分割的块大小
Object[] subAry = splitAry(ary, splitSize);//分割后的子块数组
for(Object obj: subAry){//打印输出结果
int[] aryItem = (int[]) obj;
for(int i = 0; i < aryItem.length; i++){
System.out.print(aryItem[i] + ", ");
}
System.out.println();
}
}
/**
* splitAry方法<br>
* @param ary 要分割的数组
* @param subSize 分割的块大小
* @return
*
*/
private static Object[] splitAry(int[] ary, int subSize) {
int count = ary.length % subSize == 0 ? ary.length / subSize: ary.length / subSize + 1;
List<List<Integer>> subAryList = new ArrayList<List<Integer>>();
for (int i = 0; i < count; i++) {
int index = i * subSize;
List<Integer> list = new ArrayList<Integer>();
int j = 0;
while (j < subSize && index < ary.length) {
list.add(ary[index++]);
j++;
}
subAryList.add(list);
}
Object[] subAry = new Object[subAryList.size()];
for(int i = 0; i < subAryList.size(); i++){
List<Integer> subList = subAryList.get(i);
int[] subAryItem = new int[subList.size()];
for(int j = 0; j < subList.size(); j++){
subAryItem[j] = subList.get(j).intValue();
}
subAry[i] = subAryItem;
}
return subAry;
}
}
以上这篇将一个数组按照固定大小进行拆分成数组的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
mybatis typeAliases 给实体类起别名的方法
这篇文章主要介绍了mybatis typeAliases 给实体类起别名,本文给大家分享两种用法,通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-09-09
SpringBoot如何配置MySQL和Oracl双数据源(Mybatis)
这篇文章主要介绍了SpringBoot如何配置MySQL和Oracl双数据源(Mybatis)问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2024-03-03


最新评论