import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map;
 
/**
* 集合辅助类
* @author Alan
* @date 2013-10-28 上午9:28:24
* @version $Id: CollectionUtil.java,v 1.3 2014/02/17 03:04:30 fuxinjun Exp $
*/
public class CollectionUtil {
/**
* 集合是否为空
*/
@SuppressWarnings("unchecked")
public static boolean isEmpty(Collection c){
if(c == null || c.size() == 0){
return true;
}else{
return false;
}
}
 
/**
* MAP是否为空
* @param c
* @return
*/
public static boolean isEmpty(Map<?,?> c){
if(c == null || c.isEmpty()){
return true;
}else{
return false;
}
}
 
/**
* 引用数组类型是否为空
* @param c
* @return
*/
public static boolean isEmpty(Object[] c){
if(c == null || c.length == 0){
return true;
}else{
return false;
}
}
 
/**
* 分割List
* @author Alan
* @param list 待分割的list
* @param pageSize 每段list的大小
* @return List<<List<T>>
*/
public static <T> List<List<T>> splitList(List<T> list, int pageSize) {
 
int listSize = list.size(); //list的大小
int page = (listSize + (pageSize-1)) / pageSize; //页数
 
List<List<T>> listArray = new ArrayList<List<T>>(); //创建list数组 ,用来保存分割后的list
for(int i=0;i<page;i++) { //按照数组大小遍历
List<T> subList = new ArrayList<T>(); //数组每一位放入一个分割后的list
for(int j=0;j<listSize;j++) { //遍历待分割的list
int pageIndex = ( (j + 1) + (pageSize-1) ) / pageSize; //当前记录的页码(第几页)
if(pageIndex == (i + 1)) { //当前记录的页码等于要放入的页码时
subList.add(list.get(j)); //放入list中的元素到分割后的list(subList)
}
 
if( (j + 1) == ((j + 1) * pageSize) ) { //当放满一页时退出当前循环
break;
}
}
listArray.add(subList); //将分割后的list放入对应的数组的位中
}
return listArray;
}
}
 

Java集合工具类的更多相关文章

  1. Java:集合工具类-Collections

    Java.util.Collections 集合框架工具类Collections,其方法都是静态的,本身没有构造函数. 常见方法: static <T extends Comparable< ...

  2. Java—集合工具类

    集合中的元素工具类排序: Java提供了一个操作Set.List和Map等集合的工具类:Collections,该工具类提供了大量方法对集合进行排序.查询和修改等操作,还提供了将集合对象置为不可变.对 ...

  3. Java集合工具类使用的一些坑,Arrays.asList()、Collection.toArray()、foreach

    Arrays.asList() 使用指南 最近使用Arrays.asList()遇到了一些坑,然后在网上看到这篇文章:Java Array to List Examples 感觉挺不错的,但是还不是特 ...

  4. Java 集合工具类---------- Collections类

  5. 集合工具类 - CollectionUtil.java

    集合工具类,提供数组转LIST.数组转SET.合并集合.计算笛卡儿积等方法. 源码如下:(点击下载 -  CollectionUtil.java.ArrayUtil.java.commons-lang ...

  6. java之集合工具类Collections

    Collections类简介 java.utils.Collections 是集合工具类,用来对集合进行操作.此类完全由在 collection 上进行操作或返回 collection 的静态方法组成 ...

  7. [Google Guava] 2.3-强大的集合工具类:java.util.Collections中未包含的集合工具

    原文链接 译文链接 译者:沈义扬,校对:丁一 尚未完成: Queues, Tables工具类 任何对JDK集合框架有经验的程序员都熟悉和喜欢java.util.Collections包含的工具方法.G ...

  8. java第十九天,Collections集合工具类的使用

    Collections Java中集合都实现了Collection接口,那么针对集合一些特定的功能,有没有一个接口或类能够统一的集成一些集合必要的功能呢?当然能.它就是--Collections集合工 ...

  9. Java开发工具类集合

    Java开发工具类集合 01.MD5加密工具类 import java.security.MessageDigest; import java.security.NoSuchAlgorithmExce ...

随机推荐

  1. display:inline-block会出现的问题

    用一个父元素包裹三个子元素,将父元素的white-space设置为nowrap;这样子元素就会排在父元素中而不会换行了,通过这种方式,我们也就可以在移动端使用包裹元素的margin值实现类似的单页应用 ...

  2. javaagent笔记及一个基于javassit的应用监控程序demo

    javaagent基本用法 定义入口premain public static void premain(String agentArgs, Instrumentation inst) { Syste ...

  3. Vim改装成一个IDE编程环境

      1 写在前面   Linux下编程一直被诟病的一点是: 没有一个好用的IDE, 但是听说Linux牛人, 黑客之类的也都不用IDE. 但是对我等从Windows平台转移过来的Coder来说, 一个 ...

  4. C# 获取SHA256码

    1. 如果是要获得某个字符串的SHA256,代码如下: public static string SHA256(string str) { //如果str有中文,不同Encoding的sha是不同的! ...

  5. ImportError: cannot import name wordnet

    ubuntu安装好nltk,调用时,出现问题: 解决: Install Setuptools: http://pypi.python.org/pypi/setuptools Install Pip: ...

  6. 栈C++实现

    栈的核心是LIFO(Last In First Out),即后进先出 出栈和入栈只会对栈顶进行操作,栈底永远为0.如果是入栈,要将入栈元素赋值给栈数组,再将栈顶上移一位:出栈时要先将栈顶下移一位,再将 ...

  7. ES6中的类继承和ES5中的继承模式详解

    1.ES5中的继承模式 我们先看ES5中的继承. 既然要实现继承,首先我们得要有一个父类. Animal.prototype.eat = function(food) { console.log(th ...

  8. java 配置在.properties文件中的常量

    不让用常量类,那就用.properties文件配置,放在根目录. import java.util.HashMap; import java.util.Iterator; import java.ut ...

  9. Autofac +webapi 配置

    Autofac配置 using Autofac; using System; using System.Collections.Generic; using System.Linq; using Sy ...

  10. 怎样在ado.net中存取excel和word呢?

    办公软件指可以进行文字处理.表格制作.幻灯片制作.图形图像处理.简单数据库的处理等方面工作的软件.当然啦,这也包括了word.Excel以及PPT等.现在我们就一起来学习一下:怎样在ado.net中存 ...