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;
	}
AI 代码解读

目录
打赏
0
0
0
0
1
分享
相关文章
|
10月前
|
2828. 判别首字母缩略词 --力扣 --JAVA
给你一个字符串数组 words 和一个字符串 s ,请你判断 s 是不是 words 的 首字母缩略词 。 如果可以按顺序串联 words 中每个字符串的第一个字符形成字符串 s ,则认为 s 是 words 的首字母缩略词。例如,"ab" 可以由 ["apple", "banana"] 形成,但是无法从 ["bear", "aardvark"] 形成。 如果 s 是 words 的首字母缩略词,返回 true ;否则,返回 false 。
65 0
【Bug合集】——Java大小写引起传参失败,获取值为null的解决方案
类中成员变量命名问题引起传送json字符串,但是变量为null的情况做出解释,@Data注解(Spring自动生成的get和set方法)和@JsonProperty
|
10月前
|
Java项目调试实战:如何高效调试Spring Boot项目中的GET请求,并通过equalsIgnoreCase()解决大小写不一致问题
Java项目调试实战:如何高效调试Spring Boot项目中的GET请求,并通过equalsIgnoreCase()解决大小写不一致问题
149 0
|
10月前
|
Java_获取汉字的汉语拼音首字母Java版(转)
Java_获取汉字的汉语拼音首字母Java版(转)
56 2
|
10月前
|
Java基础知识整理,驼峰规则、流程控制、自增自减
在这一篇文章中我们总结了包括注释、关键字、运算符的Java基础知识点,今天继续来聊一聊命名规则(驼峰)、流程控制、自增自减。
68 3
|
10月前
|
Java代码实现单词大小写
Java代码实现单词大小写
79 0
|
10月前
|
Java【问题 06】一次解决JSON.toJSONString和@RestController首字母大小写问题(特指属性首字母大写变小写)
Java【问题 06】一次解决JSON.toJSONString和@RestController首字母大小写问题(特指属性首字母大写变小写)
744 0
Java【代码分享 06】Lamda表达式将List对象中的Map对象的key全部转化为大写或者小写(去除外层循环:可用于Map对象中的key全部转化为大写或者小写)
Java【代码分享 06】Lamda表达式将List对象中的Map对象的key全部转化为大写或者小写(去除外层循环:可用于Map对象中的key全部转化为大写或者小写)
421 0
Java时间格式转换输出实现代码示例
Java时间格式转换输出实现代码示例
161 0
Java时间格式转换输出实现代码示例
|
17天前
|
【Java并发】【线程池】带你从0-1入门线程池
欢迎来到我的技术博客!我是一名热爱编程的开发者,梦想是编写高端CRUD应用。2025年我正在沉淀中,博客更新速度加快,期待与你一起成长。 线程池是一种复用线程资源的机制,通过预先创建一定数量的线程并管理其生命周期,避免频繁创建/销毁线程带来的性能开销。它解决了线程创建成本高、资源耗尽风险、响应速度慢和任务执行缺乏管理等问题。
142 60
【Java并发】【线程池】带你从0-1入门线程池

热门文章

最新文章