java下划线转换为驼峰,首字母可以设置大写或者小写

简介: java下划线转换驼峰

/**
	 * 下划线转换为驼峰
	 *
	 * @param line 下划线字符串
	 * @param firstIsUpperCase 首字母是否转换为大写
	 * @return
	 */
	private static String underline2Camel(String line, boolean ... firstIsUpperCase) {
		String str = "";

		if(StringUtils.isBlank(line)){
			return str;
		} else {
			StringBuilder sb = new StringBuilder();
			String [] strArr;
			// 不包含下划线,且第二个参数是空的
			if(!line.contains("_") && firstIsUpperCase.length == 0){
				sb.append(line.substring(0, 1).toLowerCase()).append(line.substring(1));
				str = sb.toString();
			} else if (!line.contains("_") && firstIsUpperCase.length != 0){
				if (!firstIsUpperCase[0]) {
					sb.append(line.substring(0, 1).toLowerCase()).append(line.substring(1));
					str = sb.toString();
				} else {
					sb.append(line.substring(0, 1).toUpperCase()).append(line.substring(1));
					str = sb.toString();
				}
			} else if (line.contains("_") && firstIsUpperCase.length == 0) {
				strArr = line.split("_");
				for (String s : strArr) {
					sb.append(s.substring(0, 1).toUpperCase()).append(s.substring(1));
				}
				str = sb.toString();
				str = str.substring(0, 1).toLowerCase() + str.substring(1);
			} else if (line.contains("_") && firstIsUpperCase.length != 0) {
				strArr = line.split("_");
				for (String s : strArr) {
					sb.append(s.substring(0, 1).toUpperCase()).append(s.substring(1));
				}
				if (!firstIsUpperCase[0]) {
					str = sb.toString();
					str = str.substring(0, 1).toLowerCase() + str.substring(1);
				} else {
					str = sb.toString();
				}
			}
		}
		return str;
	}

相关文章
|
1月前
|
Java
【java】poi 设置允许西文在单词中间换行
【java】poi 设置允许西文在单词中间换行
|
1月前
|
Java
java环境变量设置
在Java环境配置中,首先找到Java安装目录(如`C:\Program Files\Java\jdk1.8.0_291`),然后将JDK的bin目录添加到系统环境变量Path中。这涉及右键点击“计算机”->“属性”->“高级系统设置”->“环境变量”->编辑“Path”->“新建”并输入`C:\Program Files\Java\jdk1.8.0_291\bin`。保存后,重启命令行,输入`java -version`检查设置是否成功。
33 4
|
1月前
|
Java
【Java】— —实现人物对象的增、删、改、查(注:对象的删除以逻辑删除为主,在person类中设置“删除状态字段”,字删除该字段时,将状态改为有效。)
【Java】— —实现人物对象的增、删、改、查(注:对象的删除以逻辑删除为主,在person类中设置“删除状态字段”,字删除该字段时,将状态改为有效。)
43 0
|
10天前
|
存储 SQL 缓存
Java性能优化(十)-数据库调优-数据库参数设置优化
Java性能优化(十)-数据库调优-数据库参数设置优化
11 0
|
10天前
|
缓存 Java 测试技术
Java性能优化(八)-多线程调优-线程池大小设置
Java性能优化(八)-多线程调优-线程池大小设置
11 0
|
16天前
|
Java 调度
如何合理设置Java线程池大小
如何合理设置Java线程池大小
18 0
|
16天前
|
Java Unix Shell
Java的path的设置与应用
Java的path的设置与应用
|
16天前
|
IDE Java Unix
Java的class path的设置与应用
Java的class path的设置与应用
|
23天前
|
SQL Oracle 关系型数据库
实时计算 Flink版操作报错之遇到设置之后报错:java.sql.BatchUpdateException: ORA-01461:,如何解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
26天前
|
NoSQL Java Redis
如何在redis中设置文件夹名java - 蓝易云
在这个例子中,"folder:subfolder:key"就像一个文件夹路径,并且键的值被设置为"value"。然后,我们使用相同的键来获取并打印值。最后,记得关闭Jedis连接。
50 0