将stringBuilder强制为大写

时间:2015-06-26 04:17:38

标签: java stringbuilder toupper

我想知道是否还有像StringUilder的toUpperCase这样的东西?下面是我的代码,我正在尝试用户输入一个短语并将其转换为首字母缩略词。有人通过建议StringBuilder帮助我,但我无法弄清楚是否有办法使首字母缩略词成为大写。非常感谢任何帮助。

public class ThreeLetterAcronym {

public static void main(String[] args) {
    String threeWords;
    int count = 0;
    int MAX = 3;
    char c;
    //create stringbuilder
    StringBuilder acronym = new StringBuilder();

    Scanner scan = new Scanner(System.in);

    //get user input for phrase
    System.out.println("Enter your three words: ");
    threeWords = scan.nextLine();

    //create an array to split phrase into seperate words.
    String[] threeWordsArray = threeWords.split(" ");

    //loop through user input and grab first char of each word.
    for(String word : threeWordsArray) {
        if(count < MAX) {
            acronym.append(word.substring(0, 1));
            ++count;

        }//end if
    }//end for  

    System.out.println("The acronym of the three words you entered is: " + acronym);
    }//end main
}//end class

2 个答案:

答案 0 :(得分:6)

只需将大写字符串附加到它:

acronym.append(word.substring(0, 1).toUpperCase())

或从StringBuilder获取String时将String转换为大写:

System.out.println("The acronym of the three words you entered is: " + acronym.toString().toUpperCase());

答案 1 :(得分:0)

只需将大写字符串附加到StringBuilder即可。

//loop through user input and grab first char of each word.
for(String word : threeWordsArray) {
    if(count < MAX) {
        acronym.append(word.substring(0, 1).toUpperCase());
        ++count;
    }//end if
}//end for 

或者从StringBuilder获取String时大写字符串。

System.out.println("The acronym of the three words you entered is: " + acronym.toString().toUpperCase());

如果您需要图书馆,请查看Apache Common Lang WordUtilsWordUtils.capitalize(str)