0

如何将字符串从“Bobs big barbeque”之类的字符串转换为 bobsBigBarbeque?

String variableName = result;
for ( int i = 0; i < result.length( ); i++ ) {
    char c = result.charAt( i );
    if ( c == ' ' ) {
       Character.toUpperCase( variableName.charAt( result.indexOf( c )+1 ) );
    }
    variableName = variableName.replace( " ", "" );
    Character.toLowerCase( variableName.charAt( 0 ) );
    System.out.println( variableName );
}

我几乎让它工作了。我现在唯一的问题是线路....

Character.toLowerCase( variableName.charAt( 0 ) );

我必须将第一个字符转换为小写

4

4 回答 4

3
String str = "Bobs big barbeque";
str = str.replace(" ", "");

如果您只想替换给定字符串中的空格,请尝试上面的代码:

我根据您给定的输入和输出编写了以下代码:

public static void main(String[] args) {

    String str = "Bobs big barbeque";
    String newStr = String.valueOf(str.charAt(0)).toLowerCase();
    for (int i = 1; i < str.length(); i++) {
        if (str.charAt(i) == ' ') {
            newStr = newStr
                    + String.valueOf(str.charAt(i + 1)).toUpperCase();
            i = i + 1;
        }
        newStr = newStr + String.valueOf(str.charAt(i));
    }

    System.out.println(newStr);
}
于 2013-04-04T15:00:16.453 回答
1
String sentence = "Bobs big barbeque";
String[] words = sentence.split(" ");
String newVarName = "";

for (int i = 0; i < words.length; i++) {
  if (i == 0) {
    newVarName += words[i].toLowerCase();
  } else {
    newVarName += words[i].substring(0,1).toUpperCase() + words[i].substring(1);
  }
}

您可能需要花时间通过确保子字符串不会溢出来使其更安全,但本质上它需要您的句子,在空格上将其分开,然后通过将第一个单词小写来重构它,所有其他单词都以 a 开头首都。

编辑:修复了我的字符串函数名称......或者你可以这样做,我认为它看起来更干净:

for (int i = 0; i < words.length; i++) {
    newVarName += words[i].substring(0,1).toUpperCase() + words[i].substring(1);
}
newVarName = newVarName.substring(0,1).toLowerCase() + newVarName.substring(1);
于 2013-04-04T15:11:51.207 回答
0
String a = "Bobs big barbeque";
a = WordUtils.capitalizeFully(a);  //Capitalize the first letter of each word only 
a = a.replace(" ", "");            // Remove Spaces
a = a.substring(0,1).toLowerCase() + a.substring(1); // Lowercase first letter

注意:或者只是大写(a)以大写每个单词的第一个字母,并保留单词的其余部分。例如

BoBs big barBeque 将是 BoBs BIg BarBeque 与大写(a)

Bobs Big Barbeque with capitlizeFully(a);

于 2013-04-04T15:27:27.523 回答
-1
String a = "Bobs big barbeque";
String r = a.replace(" ","");

r 现在包含没有空格的字符串...

于 2013-04-04T15:01:25.180 回答