Java实现驼峰、下划线互转的方法

 更新时间:2023年05月25日 09:54:04   作者:Le_我在等风  
这篇文章主要介绍了Java实现驼峰、下划线互转的示例代码,主要有使用 Guava 实现和自定义代码转,本文结合实例代码给大家介绍的非常详细,需要的朋友可以参考下

Java实现驼峰、下划线互转

1.使用 Guava 实现

先引入相关依赖

<dependency>
    <groupId>com.google.guava</groupId>
    <artifactId>guava</artifactId>
    <version>21.0</version>
</dependency>
```1
1.1 驼峰转下划线
```java
 public static void main(String[] args) {
        String resultStr = CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE, "userName");
        System.out.println("转换后结果是:"+resultStr);
    }
    转换后结果是:user_name

1.2 下划线转驼峰

public static void main(String[] args) {
        String resultStr = CaseFormat.LOWER_UNDERSCORE.to(CaseFormat.LOWER_CAMEL, "user_name");
        System.out.println("转换后结果是:"+resultStr);
    }
    转换后结果是:userName

2.自定义代码转

2.1驼峰转下划线

  private static final Pattern TPATTERN = Pattern.compile("[A-Z0-9]");
        private String teseDemo(String str) {
            Matcher matcher = TPATTERN.matcher(str);
            StringBuffer sb = new StringBuffer();
            while (matcher.find()) {
                matcher.appendReplacement(sb, "_" + matcher.group(0).toLowerCase());
            }
            matcher.appendTail(sb);
            return sb.toString();
        }

2.2下划线转驼峰

  private static final char UNICON = '_';
    private String underlineToCamel(String param) {
        if (StringUtils.isBlank(param)) {
            return "";
        }
        int len = param.length();
        StringBuilder sb = new StringBuilder(len);
        for (int i = 0; i < len; i++) {
            char c = Character.toLowerCase(param.charAt(i));
            if (c == UNICON) {
                if (++i < len) {
                    sb.append(Character.toUpperCase(param.charAt(i)));
                }
            } else {
                sb.append(c);
            }
        }
        return sb.toString();
    }

到此这篇关于Java实现驼峰、下划线互转的示例代码的文章就介绍到这了,更多相关java驼峰、下划线内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 关于shiro中部分SpringCache失效问题的解决方法

    关于shiro中部分SpringCache失效问题的解决方法

    这篇文章主要给大家介绍了关于shiro中部分SpringCache失效问题的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-07-07
  • Java Hashtable机制深入了解

    Java Hashtable机制深入了解

    HashTable是jdk 1.0中引入的产物,基本上现在很少使用了,但是会在面试中经常被问到。本文就来带大家一起深入了解一下Hashtable,需要的可以参考一下
    2022-09-09
  • Java中关于http请求获取FlexManager某设备分组监控点

    Java中关于http请求获取FlexManager某设备分组监控点

    这篇文章主要介绍了Java中关于http请求获取FlexManager某设备分组监控点,本文仅仅介绍了使用http请求获取FlexManager平台某个FBox盒子即某设备的监控点分组的分组下的所有监控点信息,需要的朋友可以参考下
    2022-10-10
  • Spring Boot命令行启动添加参数的三种方式

    Spring Boot命令行启动添加参数的三种方式

    在命令行中,常见的参数可以分为三类:选项参数、非选项参数和系统参数,本文就来介绍一下Spring Boot命令行三种参数形式,感兴趣的可以了解一下
    2023-09-09
  • java获取日期的方法

    java获取日期的方法

    这篇文章介绍了java获取日期的方法,有需要的朋友可以参考一下
    2013-10-10
  • Jar包反编译修改代码后重新打jar包图文详解

    Jar包反编译修改代码后重新打jar包图文详解

    这篇文章主要给大家介绍了关于Jar包反编译修改代码后重新打jar包的相关资料,JAR文件就是Java Archive(Java档案文件),它是 Java的一种文档格式,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-07-07
  • Maven3种打包方式中maven-assembly-plugin的使用详解

    Maven3种打包方式中maven-assembly-plugin的使用详解

    这篇文章主要介绍了Maven3种打包方式中maven-assembly-plugin的使用,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • Java并发编程this逃逸问题总结

    Java并发编程this逃逸问题总结

    本篇文章给大家详细分析了Java并发编程this逃逸的问题分享,对此有需要的朋友参考下。
    2018-02-02
  • Intellij IDEA 中调试 maven 插件的步骤

    Intellij IDEA 中调试 maven 插件的步骤

    这篇文章主要介绍了Intellij IDEA 中调试 maven 插件,本文分步骤给大家讲解的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-03-03
  • SpringBoot配置文件导入方法详细讲解

    SpringBoot配置文件导入方法详细讲解

    Spring Boot虽然是Spring的衍生物, 但默认情况下Boot是不能直接使用Spring的配置文件的, 我们可以通过两种方式导入Spring的配置
    2022-10-10

最新评论