Java 大写问题,使用IndexOf

Java 大写问题,使用IndexOf,java,string,substring,indexof,Java,String,Substring,Indexof,输入一行文本。请不要用标点符号 Java是语言 我将这句话改为: 是java语言 尝试: int x; String sentence, first; System.out.println("\nEnter a line of text. No punctuation please."); Scanner keyboard = new Scanner (System.in); sentence=keyboard.nextLine(); x = sentence.inde

输入一行文本。请不要用标点符号

Java是语言

我将这句话改为:

是java语言

尝试:

 int x;
 String  sentence, first;

 System.out.println("\nEnter a line of text. No punctuation please.");

 Scanner keyboard = new Scanner (System.in);

 sentence=keyboard.nextLine();

   x = sentence.indexOf(" ");
 first= sentence.substring(0,x);
 second=sentence.substring(0,1)
 second=second.toUpperCase();  
 System.out.println("I have rephrased that line to read:");
 System.out.println(second+sentence.substring(x+1)+" "+first);
输出:

输入一行文本。请不要用标点符号

发生了什么事

我将这句话改为://应该改为“正在进行什么”

怎么回事

我需要把字母“I”大写。 如何使“second.substring(0,1)”读取字符“I”? 正如建议的那样,我试图找出剥离字母并将其连接起来的方法 用大写,但我不确定

对那些责骂我没有独自做这件事的人。我已经多次尝试并通读了这本书。这毫无帮助。我不得不问教授,所以他给了我一个先机,但仍然不够。无论如何,我想了解它。不是每个人都以同样的方式掌握。我个人需要例子和详细的解释来理解。

改变:

   first= sentence.substring(0,4);  
致:

然后添加:

   sentence = sentence.substring(x+1,sentence.length());
更改:

   first= sentence.substring(0,4);  
致:

然后添加:

   sentence = sentence.substring(x+1,sentence.length());
尝试:

尝试:


TL;DR:使用另一个调用
子字符串
剥离第一部分。也见


您的代码似乎根本不起作用。您将第一个空格的位置保存在
x
中,但不使用它,它应该是
句子。子字符串(0,x)

这句话的意思是:你好。在
first
中,您将存储第一个单词:how

然后,您应该从
句子
的第一个单词中删除如下内容:
句子=句子。子字符串(x+1)
。现在的句子是:你是吗

在此之后,只需将两者连接起来:

String newSentence = sentence + " " + first;
您已经在变量
newSentence
中存储了:您是如何存储的


上帝保佑

TL;DR:使用另一个调用
子字符串
剥离第一部分。也见


您的代码似乎根本不起作用。您将第一个空格的位置保存在
x
中,但不使用它,它应该是
句子。子字符串(0,x)

这句话的意思是:你好。在
first
中,您将存储第一个单词:how

然后,您应该从
句子
的第一个单词中删除如下内容:
句子=句子。子字符串(x+1)
。现在的句子是:你是吗

在此之后,只需将两者连接起来:

String newSentence = sentence + " " + first;
您已经在变量
newSentence
中存储了:您是如何存储的


上帝保佑

现在他们为什么布置这么愚蠢的家庭作业?这是家庭作业吗?我们喜欢标记与家庭作业相关的问题。可能重复(这显然是家庭作业)。您已有的代码非常接近。非常接近,如果你理解了你的代码,你实际上不需要在这里问。我的建议是,你应该研究你的代码,并理解它。答案本身对你没有多大帮助。如果你的问题回答正确,你应该把它标记为正确答案。为什么他们现在布置这么愚蠢的家庭作业?这是家庭作业吗?我们喜欢标记与家庭作业相关的问题。可能重复(这显然是家庭作业)。您已有的代码非常接近。非常接近,如果你理解了你的代码,你实际上不需要在这里问。我的建议是,你应该研究你的代码,并理解它。答案本身对你没有多大帮助。如果你的问题回答正确,你应该将其标记为正确答案谢谢你的简要解释。但是,我仍然对句子感到困惑。子字符串(x+1)?好的,没关系,我想我开始明白了。我发布的字符串类文档解释了它是如何工作的
x
将包含第一个空格的位置。然后再加上一个以获得第二个单词的开头
substring(x+1)
从提供的位置开始创建一个新字符串,该位置恰好是第二个单词的开头,因此您可以删除第一个单词。是的,这很有意义。另一个问题:我如何将字母y的大写字母改为“youarhow”?我尝试了“句子.substring(0,1)”“句子=句子.toUpperCase();“它不起作用。请参阅我提供的字符串文档,我不太熟悉Java API。应该是大写()之类的。哦,你可以用删除第一个单词的相同逻辑,但是这次删除第一个字母,大写,然后再次连接。是的,我已经厌倦了这样做。我没有成功。相反,我给substring分配了一个新的字符串值,并试图让它读取字母“I”,然后将其连接起来。但这也不太好。它一直在读错误的字符。谢谢你的简明解释。但是,我仍然对句子感到困惑。子字符串(x+1)?好的,没关系,我想我开始明白了。我发布的字符串类文档解释了它是如何工作的
x
将包含第一个空格的位置。然后再加上一个以获得第二个单词的开头
substring(x+1)
从提供的位置开始创建一个新字符串,该位置恰好是第二个单词的开头,因此您可以删除第一个单词。是的,这很有意义。另一个问题:我如何将字母y的大写字母改为“youarhow”?我尝试了“句子.substring(0,1)”“句子=句子.toUpperCase();“它不起作用。请参阅我提供的字符串文档,我不太熟悉Java API。应该是大写()之类的。哦,你可以用删除第一个单词的相同逻辑,但是这次删除第一个字母,大写,然后再次连接。是的,我已经厌倦了这样做。我没有成功。相反,我给substring分配了一个新的字符串值,并试图让它读取字母“I”,然后将其连接起来。但这也不太好,它一直在读错误的字符。