给出的指导是:编写一个程序,提示并接受用户的一行文本,然后将其打印出来,除了紧跟在空格后面的字符外,每个字符都小写。这些字符要大写。
注意:不要拆分字符串
- 接受来自用户的字符串
- 将所有字符转为小写
- 单独遍历每个字符并将空格后面的字符大写
我当前的代码:
import java.util.Scanner;
public class Capitalize
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
System.out.print("Enter a line of text:");
String TextLine = input.next();
//String FirstLetter = input.next();
String NewTextLine = " ";
int Length = TextLine.length();
System.out.print("The all lower case line of text is: " + TextLine);
for(int i = 0; i < Length; i++)
{
char Letter = TextLine.charAt(i);
System.out.print(Letter);
if(Letter != ' ')
{
Letter = Character.toLowerCase(TextLine.charAt(i));
}
else
{
Letter = Character.toUpperCase(TextLine.charAt(i));
}
NewTextLine = NewTextLine + Letter;
}
System.out.print("\nThe new text line of text is: " + NewTextLine);
}
}
输出是:
输入一行文本:aBc Def GHIJ 全小写的文本行是:aBcaBc 新的文本行是:abc
这不是我想要的输出。我想采用“ aBc DeF GHIJ ”并输出所有小写字母“ abc def ghij ”,并将新文本行设为“ Abc Def Ghij ”
有人可以帮我弄清楚我的代码哪里出错了吗?以及如何解决它。