java - 如何修复布尔方法中的死代码警告?(i++)
问题描述
我正在开发一个刽子手游戏,由于 i++ 是死代码,这个布尔语句将不会运行。这是受影响的代码。
代码:
import java.util.*;
public class Hangman {
Scanner keyboard = new Scanner(System.in);
Random rand = new Random();
char[] word;
char[] userInputs;
int lengthofWord;
boolean isIn(char c, char[] word) {
lengthofWord = word.length;
for(int i = 0; i < lengthofWord; i++) {
if(word[i] == c) {
return false;
}
else
return true;
}
}
解决方案
不要同时返回if
和 else
。您的循环当前没有。此外,您的逻辑向后看。假设你想在你需要类似的东西出现true
时返回,char c
word
boolean isIn(char c, char[] word)
{
int lengthofWord = word.length;
for (int i = 0; i < lengthofWord; i++) {
if (word[i] == c) {
return true;
}
}
return false;
}
或者for-each
你可以用一个循环来写它
boolean isIn(char c, char[] word)
{
for (char a : word) {
if (a == c) {
return true;
}
}
return false;
}
推荐阅读
- c# - 尝试在 C# 中更新数据不起作用
- c# - 有没有办法在显示工具提示文本后触发回调?
- javascript - VueJS项目的选择选项中不显示选择的值
- c - 检查是一个数字是另一个数字的一部分
- javascript - Javascript 属性说未定义
- javascript - lodash omitBy 用于嵌套对象
- c++ - 空闲堆 esp32,字符串格式化程序
- flutter - Flutter:网页加载完成后如何从 url 获取响应?
- python - 从另一个数据框中的数据框中查找一个值并打印该行(Python)
- javascript - 在静态文件夹中的 Flask 应用程序中使用 nodejs 应用程序失败并出现相对导入