如何使用Character.toUpperCase?

INe*_*101 1 java string uppercase

    for(int i=0;i<chInp.length();i++)
    {
        if(chInp.charAt(i)=='a' || chInp.charAt(i)=='e' || chInp.charAt(i)=='i' || chInp.charAt(i)=='o'|| chInp.charAt(i)=='u')
        {
            Character.toUpperCase(chInp.charAt(i));
        }
    }
Run Code Online (Sandbox Code Playgroud)

该程序搜索字符串,识别任何元音并将它们放在大写字母中.我进行了测试,它能够成功识别元音,但不是将它们放在大写字母中.

Jor*_*lla 6

正如此行所示chInp.charAt(i),uppercase您不指定值:

Character.toUpperCase(chInp.charAt(i));
Run Code Online (Sandbox Code Playgroud)

更新:因为你不允许这样做:

chInp.charAt(i) = Character.toUpperCase(chInp.charAt(i));
Run Code Online (Sandbox Code Playgroud)

要分配新值,请使用a StringBuilder

在循环之前创建它:

StringBuilder mString = new StringBuilder(chInp);
Run Code Online (Sandbox Code Playgroud)

在循环内部,分配新值:

mString.setCharAt(i, Character.toUpperCase(chInp.charAt(i)));
Run Code Online (Sandbox Code Playgroud)

  • 你不能给`charAt(i)`赋值! (3认同)