• StringUtil工具类


    package com.spring.utils;
    
    import org.apache.commons.lang3.StringUtils;
    
    import java.util.regex.Matcher;
    import java.util.regex.Pattern;
    
    public class StringUtil {
    
        private static Pattern linePattern = Pattern.compile("_(\\w)");
        private static Pattern humpPattern = Pattern.compile("[A-Z]");
    
        /**
         * 下划线转驼峰
         * @param str
         * @return
         */
        public static String lineToHump(String str) {
            if (null == str || "".equals(str)) {
                return str;
            }
            str = str.toLowerCase();
            Matcher matcher = linePattern.matcher(str);
            StringBuffer sb = new StringBuffer();
            while (matcher.find()) {
                matcher.appendReplacement(sb, matcher.group(1).toUpperCase());
            }
            matcher.appendTail(sb);
    
            str = sb.toString();
            str = str.substring(0, 1).toUpperCase() + str.substring(1);
    
            return str;
        }
    
        /**
         * 驼峰转下划线,效率比上面高
         * @param str
         * @return
         */
        public static String humpToLine(String str) {
            Matcher matcher = humpPattern.matcher(str);
            StringBuffer sb = new StringBuffer();
            while (matcher.find()) {
                matcher.appendReplacement(sb, "_" + matcher.group(0).toLowerCase());
            }
            matcher.appendTail(sb);
            return sb.toString();
        }
    
        /**
         * 驼峰转下划线(简单写法,效率低于{@link #humpToLine(String)})
         * @param str
         * @return
         */
        public static String humpToLine2(String str) {
            return str.replaceAll("[A-Z]", "_$0").toLowerCase();
        }
    
        /**
         * 首字母转小写
         * @param s
         * @return
         */
        public static String toLowerCaseFirstOne(String s) {
            if (StringUtils.isBlank(s)) {
                return s;
            }
            if (Character.isLowerCase(s.charAt(0))) {
                return s;
            } else {
                return (new StringBuilder()).append(Character.toLowerCase(s.charAt(0))).append(s.substring(1)).toString();
            }
        }
    
        /**
         * 首字母转大写
         * @param s
         * @return
         */
        public static String toUpperCaseFirstOne(String s) {
            if (StringUtils.isBlank(s)) {
                return s;
            }
            if (Character.isUpperCase(s.charAt(0))) {
                return s;
            } else {
                return (new StringBuffer()).append(Character.toUpperCase(s.charAt(0))).append(s.substring(1)).toString();
            }
        }
    
        /**
         * object转String
         * @param object
         * @return
         */
        public static String getString(Object object) {
            return getString(object, "");
        }
    
        public static String getString(Object object, String defaultValue) {
            if (null == object) {
                return defaultValue;
            }
            try {
                return object.toString();
            } catch (Exception e) {
                return defaultValue;
            }
        }
    
        /**
         * object转Integer
         * @param object
         * @return
         */
        public static int getInt(Object object) {
            return getInt(object, -1);
        }
    
        public static int getInt(Object object, Integer defaultValue) {
            if (null == object) {
                return defaultValue;
            }
            try {
                return Integer.parseInt(object.toString());
            } catch (Exception e) {
                return defaultValue;
            }
        }
    
        /**
         * object转Boolean
         * @param object
         * @return
         */
        public static boolean getBoolean(Object object) {
            return getBoolean(object, false);
        }
    
        public static boolean getBoolean(Object object, Boolean defaultValue) {
            if (null == object) {
                return defaultValue;
            }
            try {
                return Boolean.parseBoolean(object.toString());
            } catch (Exception e) {
                return defaultValue;
            }
        }
    
    }
    
    
  • 相关阅读:
    DIY树莓派之随身工具箱
    经验分享 | Burpsuite抓取非HTTP流量
    版本控制工具:SVN和Maven的区别
    Dicom Conformance
    从Script到Code Blocks、Code Behind到MVC、MVP、MVVM
    MVC,MVP 和 MVVM 的图示
    DB2 触发器的写法及表主键结构的修改
    数据表增加列的时候赋默认值
    Mysql数据库乱码总结
    又在字符集上浪费时间
  • 原文地址:https://www.cnblogs.com/mengzhao/p/13885417.html
Copyright © 2020-2023  润新知