返回一个布尔变量或直接返回true

时间:2017-02-06 21:05:47

标签: java

我正在努力寻找编写方法的最佳方法。一种方法是使用true和false分配一个布尔变量,并返回此变量,如下所示: -

boolean methodName(..arguments) 
{
    boolean variableName=false;
    if(..check condition) 
    {
        variableName=false;
    }
    return variableName;
}

还有另一种方法可以直接返回true或false而不将其赋值给任何布尔变量,如return true。

3 个答案:

答案 0 :(得分:1)

对于对布尔条件没有太多检查的简单方法,通常可以简单地返回truefalse

boolean methodName(..arguments) {
    return <checkCondition>
}

上面的代码段是代码意图的减少(我说意图因为你的代码总是返回false)。

对于更复杂的函数,一个常见的经验法则是分配一个返回变量,类似于你提供的;有太多的退货声明可能难以维持。

总而言之,它通常归结为软件团队维护的编码标准。

答案 1 :(得分:0)

您不需要使用任何变量来返回true或false值。

这个简单的方法如下所示:

boolean yourMethod(argument) {
    if (yourCondition)
        return true;
    else
        return false;
}

或更简单(也更正确):

boolean yourMethod(argument) {
    return (yourCondition);
}

例如。用户输入单词(&#34;名称&#34;例如)。而且你需要检查他是否写了#34; name&#34;使用布尔方法。现在你写下这个:

public static void main(String[] args) {
    // We create input stream reader and read input data.
    BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
    String s = reader.readLine();

    // Now you check out that user wrote exactly your word ("name").
    boolean result = checkInputData(s);
}


// Create boolean method.
static boolean checkInputData(String arg) {
    return arg.equals("name");
}

如果用户已经写了&#34; name&#34;,那么您的变量结果将为true。否则它将是错误的。

答案 2 :(得分:-1)

将true或false值赋给变量或返回true或false都要做同样的事情。这取决于调用方法的范围以及如何使用它的价值。

five.checkToSeeIfItsFive();的结果相比,如果它只是返回true,那么在读取它时可能更有意义,而不是返回包含值true的变量。