[java]代码库package com.xcesys.extras.core.util.excel;

import java.util.Collection;

import java.util.Map;

/**

*

* @author sun

*

*/

public class StringUtils {

StringUtils() {

}

public static String toString(Object o) {

if (isEmpty(o)) {

return o.toString();

}

return "";

}

public static boolean isEmpty(Object object) {

if (object != null) {

return true;

}

return false;

}

public static T defaultIfNull(T object, S defaultValue) {

return object == null ? defaultValue : object;

}

/**

* @return 将str转换为Long类型,空或异常则返回null

*/

public static Long toLong(String str) {

try {

return isBlank(str) ? null : Long.parseLong(str);

} catch (NumberFormatException e) {

}

return null;

}

/**

* @return 判断是否为null或空字符串或由空白符构成

*/

public static boolean isBlank(String str) {

return str == null || "".equals(str.trim());

}

/**

* @return 将str转换为Double类型,空或异常则返回null

*/

public static Double toDouble(String str) {

try {

return isBlank(str) ? null : Double.parseDouble(str);

} catch (NumberFormatException e) {

}

return null;

}

public static String bytesToString(byte[] bytes) {

StringBuilder sb = new StringBuilder(bytes.length * 2);

for (int i = 0; i < bytes.length; i++) {

if ((bytes[i] & 0xff) < 16) {

sb.append("0");

}

sb.append(Long.toString(bytes[i] & 0xff, 16));

}

return sb.toString();

}

public static long serialVersionUID(String svnRevision) {

try {

return Long.parseLong(svnRevision.replaceAll("\\D", ""));

} catch (Exception e) {

return 0L;

}

}

public static String getPropertyName(String name) {

if (name.length() == 1 || (name.length() > 1 && !Character.isUpperCase(name.charAt(1)))) {

return name.substring(0, 1).toLowerCase() + name.substring(1);

}

return name;

}

@SuppressWarnings({"rawtypes" })

public static boolean IsNullOrEmpty(Object v) {

if (IsNull(v)) {

return Boolean.TRUE;

} else if (v instanceof String) {

return ((String) v).trim().length() == 0;

} else if (v instanceof Collection) {

return ((Collection) v).size() == 0;

} else if (v instanceof Map) {

return ((Map) v).size() == 0;

} else if (v.getClass().isArray()) {

return ((Object[]) v).length == 0;

}

return Boolean.FALSE;

}

public static boolean IsNull(Object v) {

return v == null;

}

public static boolean IsInteger(Object v) {

String s = toString(v);

if ("".equals(s)) {

return false;

}

if ((s != null) && ("".equals(s)))

return s.matches("^[0-9]*$");

return true;

}

public static int toInteger(Object v) {

if (IsInteger(v)) {

return Integer.valueOf(toString(v));

} else {

return 0;

}

}

public static int toInteger(String v) {

if (IsInteger(v)) {

return Integer.valueOf(toString(v));

} else {

return 1;

}

}

}

java tostringutils_StringUtils相关推荐

  1. springboot实现SSE服务端主动向客户端推送数据,java服务端向客户端推送数据,kotlin模拟客户端向服务端推送数据

    SSE服务端推送 服务器向浏览器推送信息,除了 WebSocket,还有一种方法:Server-Sent Events(以下简称 SSE).本文介绍它的用法. 在很多业务场景中,会涉及到服务端向客户端 ...

  2. Java 获取当前时间之后的第一个周几,java获取当前日期的下一个周几

    Java 获取当前时间之后的第一个周几,java获取当前日期的下一个周几 //获得入参的日期 Calendar cd = Calendar.getInstance(); cd.setTime(date ...

  3. 在k8s中使用gradle构建java web项目镜像Dockerfile

    在k8s中使用gradle构建java web项目镜像Dockerfile FROM gradle:6-jdk8 AS build COPY --chown=gradle:gradle . /home ...

  4. Java | kotlin 手动注入bean,解决lateinit property loginService has not been initialized异常

    kotlin.UninitializedPropertyAccessException: lateinit property loginService has not been initialized ...

  5. SpringBoot项目使用nacos,kotlin使用nacos,java项目使用nacos,gradle项目使用nacos,maven项目使用nacos

    SpringBoot项目使用nacos kotlin demo见Gitte 一.引入依赖 提示:这里推荐使用2.2.3版本,springboot与nacos的依赖需要版本相同,否则会报错. maven ...

  6. OpenAPI使用(swagger3),Kotlin使用swagger3,Java使用swagger3,gradle、Maven使用swagger3

    OpenAPI使用(swagger3) demo见Gitte 一.背景及名词解释 OpenAPI是规范的正式名称.规范的开发工作于2015年启动,当时SmartBear(负责Swagger工具开发的公 ...

  7. Gradle错误提示:Java home supplied via ‘xxx.xxx.xxx‘ is invalid

    Gradle错误提示:Java home supplied via 'org.gradle.java.home' is invalid 描述:在使用idea采用gradle进行依赖的管理功能,当想切换 ...

  8. 查看Hotspot源码,查看java各个版本源码的网站,如何查看jdk源码

    java开发必知必会之看源码,而看源码的第一步则是找到源码

  9. java基本类型转换,随记

    java基本类型转换: double double 转 long double random = Math.round(Math.random()*10000); long l = new Doubl ...

最新文章

  1. Xamarin SimplerCursorAdapter 适配器(三)
  2. 前端一HTML:二十三行高的介绍,行高的单位
  3. Putty基础教程之(一).入门命令学习及编写HTML
  4. 《你必须知道的.NET》英雄会上骄人亮相
  5. 使用Github Actions构建、发布和部署NuGet软件包
  6. 阿里云 OSS 如何设置防盗链, 上个月图床流量耗费50G+,请求次数10W+,什么鬼?
  7. java基础知识查漏 三
  8. 奥迪A8的L3级自动驾驶方案---奥迪A8的zFAS
  9. 《第一行代码》ListView控件使用
  10. Tableau绘制符号地图、填充地图、多维地图、混合地图
  11. cpu在计算机系统中的地位和作用是什么,电脑的核心-中央处理器(CPU)及其在游戏中的作用...
  12. 《量子信息与量子计算简明教程》绪论
  13. 商标申请通常是新产品或创新的重要标志
  14. 核与线程 什么叫四核八线程
  15. DSC测试仪器校正及检验
  16. 学习jQuery框架获取数据的几种基础方式
  17. CRN: 13506 Learning Management System: Blackboard
  18. 7月7日易用性SIG技术分享活动精彩回顾
  19. NFC技术 (一) -基础介绍
  20. java读取并修改xml文件

热门文章

  1. 在windows上使用virt-manager
  2. linux云自动化运维基础知识23(DNS服务)
  3. spring的jar各包作用
  4. 解决sdk manager 下载API失败的问题
  5. 分析 AIX 和 Linux 性能工具nmon
  6. 有关Oracle角色管理
  7. 2010.2--netscreen ssg 140 恢复出厂设置的方法
  8. python logger
  9. Mac zsh not found jupyter notebook
  10. 用户态下init进程1的执行