实现-驼峰和下划线的转换 工具类
/**
* 工具类-驼峰和下划线的转换
*/
public class StringUtil {
/**
* 下划线命名转驼峰命名
* @param underscore
* @return
*/
public static String underscoreToCamelCase(String underscore){
String[] ss = underscore.split("_");
if(ss.length ==1){
return underscore;
}
StringBuffer sb = new StringBuffer();
sb.append(ss[0]);
for (int i = 1; i < ss.length; i++) {
sb.append(upperFirstCase(ss[i]));
}
return sb.toString();
}
/**
* 驼峰 转下划线
* @param camelCase
* @return
*/
public static String toLine(String camelCase){
Pattern humpPattern = Pattern.compile("[A-Z]");
Matcher matcher = humpPattern.matcher(camelCase);
StringBuffer sb = new StringBuffer();
while(matcher.find()){
matcher.appendReplacement(sb, "_"+matcher.group(0).toLowerCase());
}
matcher.appendTail(sb);
return sb.toString();
}
/**
* 首字母 转小写
* @param str
* @return
*/
private static String lowerFirstCase(String str) {
char[] chars = str.toCharArray();
chars[0] += 32;
return String.valueOf(chars);
}
/**
* 首字母 转大写
* @param str
* @return
*/
private static String upperFirstCase(String str) {
char[] chars = str.toCharArray();
chars[0] -= 32;
return String.valueOf(chars);
}
public static void main(String[] args) {
String camelCase = StringUtil.underscoreToCamelCase("cteate_time");
System.out.println(camelCase);//cteateTime
System.out.println(toLine("cteateTimeAndUser"));//cteate_time_and_user
}
}

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
《Java8实战》-第七章笔记(并行数据处理与性能)
并行数据处理与性能 在前面三章中,我们已经看到了新的 Stream 接口可以让你以声明性方式处理数据集。我们还解释了将外部迭代换为内部迭代能够让原生Java库控制流元素的处理。这种方法让Java程序员无需显式实现优化来为数据集的处理加速。到目前为止,最重要的好处是可以对这些集合执行操作流水线,能够自动利用计算机上的多个内核。 例如,在Java 7之前,并行处理数据集合非常麻烦。第一,你得明确地把包含数据的数据结构分成若干子部分。第二,你要给每个子部分分配一个独立的线程。第三,你需要在恰当的时候对它们进行同步来避免不希望出现的竞争条件,等待所有线程完成,最后把这些部分结果合并起来。Java 7引入了一个叫作分支/合并的框架,让这些操作更稳定、更不易出错。 在本章中,我们将了解 Stream 接口如何让你不用太费力气就能对数据集执行并行操作。它允许你声明性地将顺序流变为并行流。此外,你将看到Java是如何变戏法的,或者更实际地来说,流是如何在幕后应用Java 7引入的分支/合并框架的。你还会发现,了解并行流内部是如何工作的很重要,因为如果你忽视这一方面,就可能因误用而得到意外的(很可能是错...
-
下一篇
349. 两个数组的交集|python
列表推导式很强大。 def section(num1,num2): # 交集并集差集 alist = [i for i in num1 if i in num2] alist2 = [i for i in num1 if i not in num2] alist3 = list(set(num1).union(set(num2))) print(alist,alist2,alist3) if __name__ == '__main__': num1 = [4,9,5] num2 = [9,4,9,8,4] section(num1,num2) 结果: [4, 9] [5] [4, 5, 8, 9]
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- MySQL数据库在高并发下的优化方案
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- MySQL8.0.19开启GTID主从同步CentOS8