jean-louis 变成 Jean-Louis 我知道要将第一个字符更改为大写,但破折号后我不明白。 String name= nul-6ren">
gpt4 book ai didi

java - 在 "-"(indexOf)之后传入大写

转载 作者:行者123 更新时间:2023-11-29 06:49:28 25 4
gpt4 key购买 nike

在做一个练习时,我必须把破折号后面的字符改成大写。

例如 -> jean-louis 变成 Jean-Louis

我知道要将第一个字符更改为大写,但破折号后我不明白。

String name= null;                      // enter the name
String letterSlice = null; // slice the first letter
String letterSliceUpper = null; // first letter in uppercase
String remainingLetters = null; // remaining letters
int dashIndex = 0; // dash


System.out.print("Enter your name please : ");
name = input.next();

letterSlice = name.substring(0,1);
letterSliceUpper = letterSlice.toUpperCase();
remainingLetters = name.substring(1);

dashIndex = name.indexOf("-");

if(remainingLetters.indexOf("-") != -1 ){

}

System.out.print(letterSliceUpper.concat(remainingLetters));

感谢您的帮助。

最佳答案

我将从构造一个 StringBuilder(一个可变的字符集合)开始,将第一个字母大写,然后搜索 - 字符。将 - 之后的每个字符大写。喜欢,

String name = "jean-louis-patrice";
StringBuilder sb = new StringBuilder(name);
sb.setCharAt(0, Character.toUpperCase(sb.charAt(0)));
int p = 0;
while ((p = sb.indexOf("-", p + 1)) != -1) {
if (p + 1 < sb.length()) {
sb.setCharAt(p + 1, Character.toUpperCase(sb.charAt(p + 1)));
}
}
System.out.println(sb);

输出

Jean-Louis-Patrice

关于java - 在 "-"(indexOf)之后传入大写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53724588/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com