![](/img/trans.png)
[英]Using for loop and charAt to check if each letter appears exactly twice in a word
[英]Defining charAt variable to use in a loop with a boolean statement for letter matching
我正在尝试创建一个 boolean 表达式来告诉我给定的字母是否在使用 charAt 的单词中。 一个例子是,如果秘密词是菊花并且我给出字母 i,它返回 true,但如果我给出 m,它返回 false。
这是我的代码:
public boolean isInSecretWord(char letter)
{
int length = secretWord.length();
char[] arr = new char[length];
for (int i=0; i<length: i++)
if (charAt[i] == letter); // this bit doesn't work
return true;
}
在评论中进行编辑之后,这就是我所拥有的,否则语句由于某种原因而失败。
public boolean isInSecretWord(char letter)
{
int length = secretWord.length();
char[] arr = new char[length];
for (int i=0; i<length: i++)
if (secretWord.charAt(i) == letter);
return true;
else return false;
}
public boolean isInSecretWord(char letter) {
int length = secretWord.length();
for (int i = 0; i < length: i++) {
if (secretWord.charAt(i) == letter) {
return true;
}
}
return false;
}
你也有if (secretWord.charAt(i) == letter);
对于真实的情况有一个空的陈述。 这同时也是使用大括号{ }
的有力论据。 由于这个原因,您的else
没有编译。
只有在循环之后,您才知道该字母不在密语中。
查找字符indexOf
的索引有一个捷径:
public boolean isInSecretWord(char letter) {
return secretWord.indexOf(letter) >= 0;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.