Java 打印出字符串中第三个单词的第一个字母
任务是:打印出歌曲第三个单词的第一个字母。 导师/演示者说我应该使用循环Java 打印出字符串中第三个单词的第一个字母,java,Java,任务是:打印出歌曲第三个单词的第一个字母。 导师/演示者说我应该使用循环 import java.lang.*; public class SongApp{ public static void main(String[] args){ Song song1 = new Song("While my guitar weeps"); Song song2 = new Song("Let it be"); //Song song3 = new Song("Penny Lane"); Stri
import java.lang.*;
public class SongApp{
public static void main(String[] args){
Song song1 = new Song("While my guitar weeps");
Song song2 = new Song("Let it be");
//Song song3 = new Song("Penny Lane");
String str1 = song1.toString();
String str2 = song2.toString();
System.out.println(song1.toString());
//System.out.println("Length is: " + str1.length());
System.out.println(song2.toString());
//System.out.println("Length is: " + str2.length());
//System.out.println(str1.charAt(str1.length()-1));
//System.out.println(str2.charAt(str2.length()-1));
int s1 = str1.indexOf(' ');
System.out.println(str1.substring(0, str1.indexOf(' ', s1 +1)));
//System.out.println(str1.substring(str1.indexOf(' ', s1 + 2)));
int s2 = str2.indexOf(' ');
System.out.println(str2.substring(0, str2.indexOf(' ', s2 +1)));
//System.out.println(str2.substring(str2.indexOf(' ', s2 + 1)));
}
}
public class Song{
private String songLine;
public Song (String sLine){
songLine = sLine;
}
public String toString(){
return songLine;
}
public void process(){}
}
我被困住了,不知道如何继续
我还需要打印我已经完成的前两个单词,但需要在另一行打印字符串的其余部分,到目前为止,我主要是为了在开始时留出额外的空间
谢谢,
JXDee公共静态void main(字符串[]args){
public static void main(String[] args){
Song song1 = new Song("While my guitar weeps");
Song song2 = new Song("Let it be");
String str1 = song1.toString();
String str2 = song2.toString();
int x=0;
int currentSpace=0;
String wordResult="";
while (x<song1.length()){
if (song1.charAt(x)=' ') {
currentSpace++;
}
if (currentSpace = 2) {
wordResult =wordResult + song1.charAt(x);
}
x++;
}
System.out.println("The first character is: " + wordResult.charAt(0));
System.out.println("The result is :" + wordResult);
}
}
Song song1=新歌(“当我的吉他哭泣时”);
Song song2=新歌(“顺其自然”);
字符串str1=song1.toString();
字符串str2=song2.toString();
int x=0;
int currentSpace=0;
字符串wordResult=“”;
而(xA工作溶液::-)
String x=“当我的吉他哭泣时”;
x=x.trim();
对于(inti=1;istringword=“一二三”;
int空间=0;
int ch=0;
虽然(空格请按照上面的输入发布预期的输出。我很欣赏快速响应,但演示者希望它在一个循环中。我们还没有达到数组的数量。等等,作为不使用数组的条件?到目前为止,我们一直在做“if,else,while,Do,case”循环,但没有数组,演示者没有指定要使用哪个循环。@JXDee:你可以检查一下k我的答案,它有While
循环,并且没有使用数组
。我知道示威者想要不同的答案。我只是使用While循环编辑了代码。我希望这会有助于欢迎堆栈溢出!虽然您可能已经解决了此用户的问题,但仅代码的答案对在未来。请编辑您的答案,解释为什么您的代码解决了原始问题。您好@JoeC,谢谢您的观点。我不是故意解释的。;-)欢迎使用Stack Overflow!虽然您可能已经解决了此用户的问题,但对于将来遇到此问题的用户来说,仅代码的答案并没有多大帮助。请编辑您的答案,解释您的代码解决原始问题的原因。@JoeC我理解。但我想这就是代码需要的全部解释
String x = "While my guitar weeps";
x= x.trim();
for(int i=1; i<=2; i++)
x = x.substring(x.indexOf(" ")+1) ;
char reqChar = x.charAt(0);
String word = "One Two Three";
int space = 0;
int ch = 0;
while(space<2){
if(word.charAt(ch)==' '){
space++;
}
ch++;
}
System.out.println(word.charAt(ch));