A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

/**
     *一个小工具类
     *@author Hf
     *@mailto:huangfei8087@163.com
     * 在编程的过程中很多时候都希望能将
        容器直接转成成为指定的数据,比如
        List<Integer>ids = new ArrayList<Integer>();
        则每次都需要手动创建一个Integer数组,然后在赋值。  
         
        collectionToArray 这个方法就实现了这个功能,可直接转换成为Integer数组
    */
public class Helper{  
    /**
     *判断去空的方法
     *@author Hf
     *@mailto:huangfei8087@163.com
     *
    */
    public static boolean isNull(Object value){  
        if(value == null){  
            return true ;   
        }  
        if(value.getClass().isArray()){  
            if(Array.getLength(value) == 0){  
                return true ;   
            }  
        }  
        if(value instanceof Collection<?>){  
            Collection<?> collection = (Collection<?>) value ;  
            if(collection.isEmpty()){  
                return true ;  
            }  
        }else if(value instanceof Map<?, ?>){  
            Map<?, ?> map = (Map<?, ?>) value ;  
            if(map.isEmpty()){  
                return true ;  
            }  
        }else if(value instanceof String){  
            String string = (String) value ;  
            return isNull(string) ;  
        }  
        return false;   
    }  
      
      
    /**
     * 判断String类型是否为空  
     *@author Hf
     *@mailto:huangfei8087@163.com
     * */
    public static boolean isNull(String value){  
        if(value == null){  
            return true ;  
        }  
        if("".equals(value.trim())){  
            return true ;  
        }  
        return false ;  
    }  
      
    /**
     *去掉数组中为NULL 的字段
     *@author Hf
     *@mailto:huangfei8087@163.com
     * */
    public static <T> List<T> checkNull(T[] objs){  
        if(isNull(objs)){  
            return null;  
        }  
        List<T> objList = new ArrayList<T>();   
        for(T obj : objs){  
            if(!isNull(obj)){  
                objList.add(obj) ;     
            }  
        }  
        if(isNull(objList)){  
            return null;  
        }  
        return objList ;   
    }  
      
   
    /**
     *将容器转换成为数组
     *@author Hf
     *@mailto:huangfei8087@163.com
     * */
    public static <T> T[] collectionToArray(Collection<T> coll){   
        T[] ts = null ;  
        try {  
            if(coll == null || coll.isEmpty()){  
                return ts;  
            }  
               
            ts = collectionToArray(coll , null ) ;  
        } catch (Exception e) {  
            try {  
                ts = collectionToArray(coll , Object.class ) ;   
            } catch (Exception e2) {   
                e2.printStackTrace( ) ;   
            }  
        }  
        return ts ;   
    }  
      
    /**
     * 将容器转换成为指定数组
     *@author Hf
     *@mailto:huangfei8087@163.com
     * */  
    public static <T> T[] collectionToArray(Collection<T> coll , Class<?> clazz){  
        Iterator<T> iterator = coll.iterator() ;  
        T[] ts = null ;  
        int x=0 ;  
        while(iterator.hasNext()){  
            T tempT = iterator.next() ;   
            if(x == 0){  
                ts = (T[])Array.newInstance(clazz != null ? clazz : tempT.getClass()   
                        , coll.size()) ;  
            }  
            ts[x++] = tempT ;   
        }  
        return ts ;   
    }  
      
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马