关注
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); int n = sc.nextInt(); while ((n--) > 0) {
StringBuffer sb = new StringBuffer(sc.next()); int lenOld = sb.length(); int lenNew = lenOld; for (int i = 1; i < lenOld; i++) { if (Character.isLowerCase(sb.charAt(i - 1)) && Character.isUpperCase(sb.charAt(i))) {
lenNew++; } if (i < lenOld-1 && Character.isLowerCase(sb.charAt(i+1)) && Character.isUpperCase(sb.charAt(i - 1)) && Character.isUpperCase(sb.charAt(i))) {
lenNew++; }
} int indexOld = lenOld - 1; int indexNew = lenNew - 1; sb.setLength(lenNew); for (; indexOld >= 1 && indexOld < lenNew; indexOld--) { if (Character.isLowerCase(sb.charAt(indexOld - 1)) && Character.isUpperCase(sb.charAt(indexOld))) {
sb.setCharAt(indexNew--, sb.charAt(indexOld)); sb.setCharAt(indexNew--, '_'); } else if (indexOld < lenNew - 1 && Character.isLowerCase(sb.charAt(indexOld + 1)) && Character.isUpperCase(sb.charAt(indexOld - 1)) && Character.isUpperCase(sb.charAt(indexOld))) {
sb.setCharAt(indexNew--, sb.charAt(indexOld)); sb.setCharAt(indexNew--, '_'); } else {
sb.setCharAt(indexNew--, sb.charAt(indexOld)); }
}
System.out.println(sb.toString().toLowerCase()); }
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 为了求职,我做过的疯狂伪装 #
6478次浏览 95人参与
# 从顶到拉给所有面过的公司评分 #
3169次浏览 53人参与
# 小红书校招直播来了 #
82390次浏览 478人参与
# 职场破冰,你们都聊什么? #
2650次浏览 50人参与
# 晒晒你的中秋福利 #
13421次浏览 83人参与
# 聊聊这家公司值得去吗 #
542932次浏览 3627人参与
# 产品每日一题 #
59574次浏览 604人参与
# 你面试被问到过哪些不会的问题? #
13181次浏览 559人参与
# 如何快速融入团队? #
31025次浏览 278人参与
# 机械笔面试考察这些知识点 #
9260次浏览 89人参与
# 你觉得早上几点上班合适? #
81226次浏览 329人参与
# 广联达求职进展汇总 #
9475次浏览 50人参与
# 电网笔面经互助 #
45323次浏览 428人参与
# 远景求职进展汇总 #
60241次浏览 317人参与
# 秋招报数:你投了多少家公司? #
19308次浏览 204人参与
# 浪潮求职进展汇总 #
15378次浏览 131人参与
# 安克创新求职进展汇总 #
47183次浏览 496人参与
# 上班摸鱼,你都在干些什么? #
4433次浏览 74人参与
# 为什么国企只招应届生 #
197264次浏览 1212人参与
# 机械人,你最希望上岸的公司是? #
180863次浏览 1893人参与
# 秋招的嫡长offer #
18362次浏览 174人参与