2011-01-31 36 views
0

输入一行文本。没有标点符号。UpperCase问题,使用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.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); 

输出:

输入一行文本。没有标点符号。

是怎么回事

我已经改写上面一行改为://它应该阅读“是怎么回事什么”

W¯¯回事什么

PS -I需要做信“我”资本。 如何让“second.substring(0,1)”读取字符“i”? 正如所建议的,我试图找出剥离的信件,并用大写连接它 ,但我不确定。

给抨击我的人不要自己做这件事。我给了它多次尝试,并通读这本书。这没有帮助。我不得不问教授,所以他给了我一个开始,但仍然不够。无论如何,我想了解它。不是每个人都以同样的方式掌握。我个人需要示例和详细解释来理解。

+3

为什么现在他们做这么傻的家庭作业? – 2011-01-31 17:46:10

+0

这是功课吗?我们喜欢标记与家庭作业有关的问题。 – 2011-01-31 17:47:10

回答

2

变化:

first= sentence.substring(0,4); 

要:

first= sentence.substring(0,x); 

然后加:

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

尝试:

first = sentence.substring (0, x); 
// other stuff 
System.out.println (sentence.substring (x + 1) + " " + first); 
0

TL; DR:使用其他请致电substring拆除第一部分。见the String class documentationManipulating Characters in a String


似乎您的代码并没有在所有的工作。您保存在x第一空间的位置但不使用它,它应该是sentence.substring(0, x)

对于这句话:你好吗。在first你所储存的第一个字:如何

那么你应该从sentence剥离的第一个字像这样的东西:sentence = sentence.substring(x+1)。现在,一句是:

之后正好连接两个:

String newSentence = sentence + " " + first; 

有你有存放在变量newSentence

神如何祝福!