• java map去除空值和null,等一些好用的工具类


    直接放代码,我是写在我的工具类中使用的

      

    public static String trimNull(String str){
    if("".equals(str)||str==null||"null".equals(str)){
    return "";
    }else{
    return str.trim();
    }
    }

    /**
    * 移除map的空key
    * @param map
    * @return
    */
    public static void removeNullKey(Map map){
    Set set = map.keySet();
    for (Iterator iterator = set.iterator(); iterator.hasNext();) {
    Object obj = (Object) iterator.next();
    remove(obj, iterator);
    }
    }
    /**
    * Iterator 是工作在一个独立的线程中,并且拥有一个 mutex 锁。
    * Iterator 被创建之后会建立一个指向原来对象的单链索引表,当原来的对象数量发生变化时,这个索引表的内容不会同步改变,
    * 所以当索引指针往后移动的时候就找不到要迭代的对象,所以按照 fail-fast 原则 Iterator 会马上抛出 java.util.ConcurrentModificationException 异常。
    * 所以 Iterator 在工作的时候是不允许被迭代的对象被改变的。
    * 但你可以使用 Iterator 本身的方法 remove() 来删除对象, Iterator.remove() 方法会在删除当前迭代对象的同时维护索引的一致性。
    * @param obj
    * @param iterator
    */
    private static void remove(Object obj,Iterator iterator){
    if(obj instanceof String){
    String str = (String)obj;
    if(str==null|| str.length()==0){
    iterator.remove();
    }
    }else if(obj instanceof Collection){
    Collection col = (Collection)obj;
    if(col==null||col.isEmpty()){
    iterator.remove();
    }

    }else if(obj instanceof Map){
    Map temp = (Map)obj;
    if(temp==null||temp.isEmpty()){
    iterator.remove();
    }

    }else if(obj instanceof Object[]){
    Object[] array =(Object[])obj;
    if(array==null||array.length<=0){
    iterator.remove();
    }
    }else{
    if(obj==null){
    iterator.remove();
    }
    }
    }

    /**
    * 移除map中的value空值
    * @param map
    * @return
    */
    public static void removeNullValue(Map map){
    Set set = map.keySet();
    for (Iterator iterator = set.iterator(); iterator.hasNext();) {
    Object obj = (Object) iterator.next();
    Object value =(Object)map.get(obj);
    remove(value, iterator);
    }
    }
    public static String dateToFormatString(Date thdate){
    DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    return df.format(thdate);
    }
    public static String dateToString(Object obj){
    return (String) obj;
    }
    public static boolean strNotNull(String str) {
    if (str == null || str.trim().length() == 0
    || str.replaceAll(" ", "").length() == 0){
    return false;
    } else{
    return true;
    }
    }

  • 相关阅读:
    【2021-05-18】人生十三信条
    【2021-05-17】打了第一针疫苗
    【2021-05-16】该工作时好好工作,该休息时好好休息
    【2021-05-15】人生十三信条
    【2021-05-14】要保持团队作战的模式
    【2021-05-13】罗马不是一天能建成的
    【2021-05-12】己所不欲勿施于人
    【2021-05-11】服务好了别人,也就服务好了自己
    二维区域和检索
    寻找重复数
  • 原文地址:https://www.cnblogs.com/liglacier/p/13553386.html
Copyright © 2020-2023  润新知