Java 接受星号中的正确字母。但是一个正确的字母+;另一封信也被接受了

Java 接受星号中的正确字母。但是一个正确的字母+;另一封信也被接受了,java,Java,猜谜游戏St_i_g Mani_ulat_n中的示例 当我猜字母“r”代表(St“r”ing)时,哪个是正确的 但当我把r+NJDFSAD23放在正确的位置时 { 公共静态void main(字符串[]args){ String word=“字符串操作”; StringBuilder secretPhrase=新StringBuilder(“St*i*g Mani*u*at**n”); 内部位置; System.out.println(“从秘密短语的(*)中猜出每个字母”); 扫描仪扫描=新扫描

猜谜游戏St_i_g Mani_ulat_n中的示例

当我猜字母“r”代表(St“r”ing)时,哪个是正确的 但当我把r+NJDFSAD23放在正确的位置时

{
公共静态void main(字符串[]args){
String word=“字符串操作”;
StringBuilder secretPhrase=新StringBuilder(“St*i*g Mani*u*at**n”);
内部位置;
System.out.println(“从秘密短语的(*)中猜出每个字母”);
扫描仪扫描=新扫描仪(System.in);
while(true){
位置=secretPhrase.indexOf(“*”);
如果(位置==-1)
打破
System.out.println(“猜字母:“+secretPhrase+”:”;
char ch=scan.nextLine().charAt(0);
if(ch==字字符(位置)){
secretPhrase.replace(position,position+1,word.substring(position,position+1));
System.out.println(“正确猜测!”+秘密短语);
}否则{
System.out.println(“字母不在短语中。请重试”);
}
}
System.out.println(“恭喜你,你猜到了秘密阶段。”);
}
}

JAVA!=Javascript在提取
字符(0)
之前,您必须添加一项检查,即通过
scan.nextLine()
读取的行实际上只包含一个字符。是否需要设置限制?