Java 把第一个单词移到句末?
下面是整个问题的答案。 它应该适用于任何句子,而不仅仅是示例中给出的句子 我知道这和弦有关。我们的教授已经复习了这些字符串方法 这只是一个基本的java类,所以不要使用任何复杂的东西 这就是我所拥有的,我不知道接下来该怎么办 任何帮助都将不胜感激Java 把第一个单词移到句末?,java,string,Java,String,下面是整个问题的答案。 它应该适用于任何句子,而不仅仅是示例中给出的句子 我知道这和弦有关。我们的教授已经复习了这些字符串方法 这只是一个基本的java类,所以不要使用任何复杂的东西 这就是我所拥有的,我不知道接下来该怎么办 任何帮助都将不胜感激 public static void main(String[] args) { Scanner keyboard = new Scanner(System.in); System.out.println("Ent
public static void main(String[] args)
{
Scanner keyboard = new Scanner(System.in);
System.out.println("Enter a line of text. No punctuaton please");
String sentence = keyboard.nextLine();
System.out.println(sentence);
}
}
您可以使用:
是第一个单词splitted[0]
是最后一个字splitted[splitted.length-1]
由于不允许您使用
String#split
,您可以使用以下技巧:
myString = myString.substring(0, myString.lastIndexOf(" ")) + firstWord;
通过这样做,您将有一个包含没有最后一个单词的句子的列表。(对于提取第一个单词,可以使用
firstWord
是您以前提取的第一个单词(我不会为您解决整个问题,尝试自己解决,现在应该很容易)您可以使用:
是第一个单词splitted[0]
是最后一个字splitted[splitted.length-1]
由于不允许您使用
String#split
,您可以使用以下技巧:
myString = myString.substring(0, myString.lastIndexOf(" ")) + firstWord;
通过这样做,您将拥有一个包含句子但不包含最后一个单词的列表。(对于提取第一个单词,您可以使用
firstWord
是您之前提取的第一个单词(我不会为您解决整个问题,尝试自己解决,现在应该很容易)很好,因为您似乎在寻找非常简单的字符串算术。
这是我能做的最简单的事情:
// get the index of the start of the second word
int index = line.indexOf (' ');
// get the first char of the second word
char c = line.charAt(index+1);
/* this is a bit ugly, yet necessary in order to convert the
* first char to upper case */
String start = String.valueOf(c).toUpperCase();
// adding the rest of the sentence
start += line.substring (index+2);
// adding space to this string because we cut it
start += " ";
// getting the first word of the setence
String end = line.substring (0 , index);
// print the string
System.out.println(start + end);
看起来你在寻找非常简单的字符串算术。 这是我能做的最简单的事情:
// get the index of the start of the second word
int index = line.indexOf (' ');
// get the first char of the second word
char c = line.charAt(index+1);
/* this is a bit ugly, yet necessary in order to convert the
* first char to upper case */
String start = String.valueOf(c).toUpperCase();
// adding the rest of the sentence
start += line.substring (index+2);
// adding space to this string because we cut it
start += " ";
// getting the first word of the setence
String end = line.substring (0 , index);
// print the string
System.out.println(start + end);
试试这个
String str = "Java is the language";
String first = str.split(" ")[0];
str = str.replace(first, "").trim();
str = str + " " + first;
System.out.println(str);
试试这个
String str = "Java is the language";
String first = str.split(" ")[0];
str = str.replace(first, "").trim();
str = str + " " + first;
System.out.println(str);
这里有另一种方法可以做到这一点。 更新:无循环
Scanner keyboard = new Scanner(System.in);
System.out.println("Enter a line of text. No punctuaton please");
String sentence = keyboard.nextLine();
System.out.println(sentence);
int spacePosition = sentence.indexOf(" ");
String firstString = sentence.substring(0, spacePosition).trim();
String restOfSentence = sentence.substring(spacePosition, sentence.length()).trim();
String firstChar = restOfSentence.substring(0, 1);
firstChar = firstChar.toUpperCase();
restOfSentence = firstChar + restOfSentence.substring(1, restOfSentence.length());
System.out.println(restOfSentence + " " + firstString);
keyboard.close();
这里有另一种方法可以做到这一点。 更新:无循环
Scanner keyboard = new Scanner(System.in);
System.out.println("Enter a line of text. No punctuaton please");
String sentence = keyboard.nextLine();
System.out.println(sentence);
int spacePosition = sentence.indexOf(" ");
String firstString = sentence.substring(0, spacePosition).trim();
String restOfSentence = sentence.substring(spacePosition, sentence.length()).trim();
String firstChar = restOfSentence.substring(0, 1);
firstChar = firstChar.toUpperCase();
restOfSentence = firstChar + restOfSentence.substring(1, restOfSentence.length());
System.out.println(restOfSentence + " " + firstString);
keyboard.close();
不知道你的意思。而且这个方法不在这里。你能把这个代码合并到我的代码中吗?myString=myString.substring(0,myString.lastIndexOf(“”)+firstWord;eclipse中的firstWord是一个错误,我不确定你所说的String#indexOf是什么意思。也许我们应该按照你上次展示的方式来做。我想我们的教授只是忘记给我们展示这个方法了。记住,我只是一个初学者,到目前为止我们只有两门课,所以我仍然很困惑。firstWord会产生一个错误,因为我相信你还没有声明。作者已经提到了如何检索它。虽然他不想向您提供答案,但我会:
String firstWord=myString.substring(0,myString.indexOf(“”)
不知道您的意思。该方法不在这里。您能将该代码合并到我的代码中吗?myString=myString.substring(0,myString.lastIndexOf(“”)+firstWord;eclipse中的firstWord是一个错误,我不确定你所说的String#indexOf是什么意思。也许我们应该按照你上次展示的方式来做。我想我们的教授只是忘记给我们展示这个方法了。记住,我只是一个初学者,到目前为止我们只有两门课,所以我仍然很困惑。firstWord会产生一个错误,因为我相信你还没有声明。作者已经提到了如何检索它。虽然他不想向您提供Answare,但我将:String firstWord=myString.substring(0,myString.indexOf(“”))注:他要求在开始时的第一个新字符是大写字母。注意到他在开始时的第一个新字符是大写字母。我会考虑这个非常坏的代码。我不会向初学者显示类似的东西。我认为这是初学者代码,它只是基本的循环,我不认为这是一个。y高级代码。不同的人有不同的观点。虽然这有点复杂,如果你真的想使用循环,你可以简化这个例子很多。例如if(句子。字符(i)='')firstWord=句子。子字符串(0,i);
substring()和charAt()这就是为什么他会考虑这个非常糟糕的代码的原因之一。我不会向初学者展示类似的东西。我认为这是一个初学者代码,它只是基本的循环,我不认为这是任何高级代码。不同的人我会说不同的意见。o使用循环可以大大简化该示例。例如if(句子.charAt(i)='')firstWord=句子.substring(0,i);
substring()和charAt()这是他能用的,这是它的代码工作的原因之一,这个词被替换而不是原来的java语言是java语言是java语言再次检查一下,我已经测试过了,现在又做了一遍。“是java语言吗?”是我的输出:P我看不到任何选项来选择这个作为答案:S它在哪里?nvmcode类工作,单词被替换而不是原始java是语言是java java再次检查,我已经测试了它,现在又做了一遍。“是语言java吗?”是我的输出:P我看不到任何选项选择这个作为答案:S它在哪里?nvm