匹配所有字符的短语中的所有字符的状态我在Java中,下面的方法:报告字母表中的
void searchPhrase(String[] phrase){
searchResult = new int[phrase.length];
int j=0, k=0;
for (int i=0; i<frase.length;i++)
if (!phrase[i].equals(alphabet[k])){
System.out.println("\nLetter "+phrase[i]+" was not found when comparing it to "+alphabet[k]);
k++;
}
else{
System.out.println("\nLetter "+phrase[i]+" was found when comparing it to "+alphabet[k]);
searchResult[j] = i;
k=0;
}
}
我有两个字符串数组,短语和字母。短语是任何给定的短语,并且字母表包含从A到Z的字母表。 我需要接收短语的方法,例如:“HELLO STACK”。然后,它必须将每个字母与字母表进行比较,如下所示:
H == A?号码
H == B?
...
H == H?是
然后,searchResult [0] = 7,因为短语[i]中的字母H等于字母表[7]。现在,它被发现字母H,它应该继续与字母E,等等。 不幸的是,我的代码是这样做的:
H == A?号码
E == B? No.
L == C?号码
L == D?号码
O == E?
(空格) == F?号码
S == G?它继续,直到它完成“HELLO堆栈”这个词组。如果没有在字母表中找到,我能做些什么来阻止它进入下一封信? 非常感谢!
在for循环,我看到 “frase.length”。这是另一个变量? – patricK 2014-09-01 01:17:33
为什么不使用'String.indexOf()'? – 2014-09-01 01:26:49
@ user3651293答案贴出你接受与输出 – 2014-09-01 01:32:40