FormatUtil

简介:   package com.css.common.util; import java.util.ArrayList; import java.util.List; import java.util.Map; /**  * 用于操作字符串的工具类  *  * @version 1.0  *  */ public class FormatUtil {    /**

 

package com.css.common.util;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

/**
 * 用于操作字符串的工具类
 *
 * @version 1.0
 *
 */
public class FormatUtil {
 
 /**
  * 过滤空格
  * @param str
  * @return
  */
 public static String trim(String str) {
  String temp = "";
  if(str==null){
   return temp;
  }
  for (int i = 0; i < str.length(); i++) {
   temp = (new StringBuilder()).append(temp).append(str.substring(i, i + 1).trim()).toString();
  }
  return temp;
 }

 /**
  * 判断对象是否为空
  * @param str
  * @return
  */
 public static boolean isNotNull(Object str) {
  boolean b = false;
  if (str == null) {
   return b;
  }
  if (str instanceof String) {
   String value = str.toString();
   if (value != null && trim(value).length() > 0) {
    b = true;
   }
  } else if (str instanceof Double) {
   Double value = (Double) str;
   if (value != null && value.doubleValue() > 0) {
    b = true;
   }
  } else if (str instanceof Integer) {
   Integer value = (Integer) str;
   if (value != null && value.intValue() > 0) {
    b = true;
   }
  } else if (str instanceof Long) {
   Long value = (Long) str;
   if (value != null && value.longValue() > 0) {
    b = true;
   }
  } else if (str instanceof String[]) {
   String value[] = (String[]) str;
   if (value != null && value.length > 0) {
    b = true;
   }
  } else if (str instanceof Long[]) {
   Long value[] = (Long[]) str;
   if (value != null && value.length > 0) {
    b = true;
   }
  } else if (str instanceof Byte) {
   Byte value = (Byte) str;
   if (value != null && value.byteValue() > 0) {
    b = true;
   }
  } else if (str instanceof Map) {
   Map value = (Map) str;
   if (str != null && value.size() > 0) {
    b = true;
   }
  } else if (str instanceof List) {
   List value = (List) str;
   if (str != null && value.size() > 0) {
    b = true;
   }
  } else if (str != null) {
   b = true;
  }
  return b;
 }
 
 /**
     * Splits a string into substrings based on the supplied delimiter
     * character. Each extracted substring will be trimmed of leading
     * and trailing whitespace.
     *
     * @param str The string to split
     * @param delimiter The character that delimits the string
     * @return A string array containing the resultant substrings
     */
    public static final List split(String str, char delimiter) {
        // return no groups if we have an empty string
        if ((str == null) || "".equals(str)) {
            return new ArrayList();
        }

        ArrayList parts = new ArrayList();
        int currentIndex;
        int previousIndex = 0;

        while ((currentIndex = str.indexOf(delimiter, previousIndex)) > 0) {
            String part = str.substring(previousIndex, currentIndex).trim();
            parts.add(part);
            previousIndex = currentIndex + 1;
        }

        parts.add(str.substring(previousIndex, str.length()).trim());

        return parts;
    }

}

目录
相关文章
|
机器学习/深度学习 Web App开发 编解码
最高增强至1440p,阿里云发布端侧实时超分工具,低成本实现高画质
近日,阿里云机器学习PAI团队发布一键端侧超分工具,可实现在设备和网络带宽不变的情况下,将移动端视频分辨率提升1倍,最高可增强至1440p,将大幅提升终端用户的观看体验,该技术目前已在优酷、夸克、UC浏览器等多个APP中广泛应用。
最高增强至1440p,阿里云发布端侧实时超分工具,低成本实现高画质
|
2月前
|
存储 缓存 数据库
解决缓存与数据库的数据一致性问题的终极指南
解决缓存与数据库的数据一致性问题的终极指南
186 63
|
3月前
|
Go
Golang语言结构体(struct)面向对象编程进阶篇(封装,继承和多态)
这篇文章是关于Go语言中结构体(struct)面向对象编程进阶篇的教程,涵盖了Go语言如何实现封装、继承和多态,以及结构体内存布局的相关概念和案例。
183 4
|
4月前
|
Go 开发者
|
7月前
|
缓存 安全 程序员
Python 的并发编程:解释什么是线程安全(Thread Safety)?
Python 的并发编程:解释什么是线程安全(Thread Safety)?
241 1
|
7月前
|
网络协议 Java 物联网
Spring Boot与Netty打造TCP服务端(解决粘包问题)
Spring Boot与Netty打造TCP服务端(解决粘包问题)
1068 2
|
JavaScript Windows
vue : 无法加载文件 C:\Program Files\nodejs\vue.ps1,因为在此系统上禁止运行脚本。...
vue : 无法加载文件 C:\Program Files\nodejs\vue.ps1,因为在此系统上禁止运行脚本。...
469 1
|
7月前
|
Go C++
go 语言回调函数和闭包
go 语言回调函数和闭包
|
XML 开发框架 Java
J2EE——13种规范总结
J2EE——13种规范总结
462 0
|
Linux Go Windows
gopacket使用
gopacket使用