首页 > 解决方案 > 如何修复布尔方法中的死代码警告?(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;
    }
}

标签: java

解决方案


不要同时返回if else。您的循环当前没有。此外,您的逻辑向后看。假设你想在你需要类似的东西出现true时返回,char cword

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;
}

推荐阅读