java - 如何在java中返回 boolean 值(原始值)?

标签 java

我是java新手,因此,我不完全确定我是否做对了。我想做的是找出字符串列表中的项目数是否为偶数且是基元。

public class LearnAboutInputs { 
    public boolean isEven(String[] value) {
        if (value.size() % 2 == 0 && boolean == true) {
            return true;
        } else {
            return false;
        }
    }
}

最佳答案

您放在那里的内容无效。使其有效的最小编辑如下:

public class LearnAboutInputs { 
    public boolean isEven(String[] value) {
        if(value.length % 2 == 0) {
            return true;
        }
        else {
            return false;
        }

这假设您打算查看数组的长度,而不是查看其中一个或多个字符串的 size()。

但是,if 检查本身就是 boolean 值,因此您可以更简洁地编写:

public class LearnAboutInputs { 
    public boolean isEven(String[] value) {
        return value.length % 2 == 0;
    }

SeeDart 和 PoisonedYouth 提出了关于 null 检查的一个很好的观点,因此将其添加到简洁的示例中会导致:

public class LearnAboutInputs { 
    public boolean isEven(String[] value) {
        return value != null && value.length % 2 == 0;
    }

如果值为 null,则语句短路为 false,因此不会评估后半部分,从而使其有效。

如果你想返回Boolean类的对象而不是primitive boolean,将返回类型从小写“boolean”更改为大写“Boolean”单词。方便autoboxing功能将为您完成跑腿工作。

public class LearnAboutInputs { 
    public Boolean isEven(String[] value) {  // Return object rather than primitive.
        return value != null && value.length % 2 == 0;  // Autoboxing transforms the generated `boolean` primitive value into a `Boolean` object.
    }

关于java - 如何在java中返回 boolean 值(原始值)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44056391/

相关文章:

java - 作业帮助需要使用 MyMath 的 java 接口(interface)

java - 替代调用 main

java - 欧拉项目 #23 (Java)。我不明白出了什么问题。答案已关闭 64

java - Twitter - 查询特定地理位置半径内的推文

java - 外部库数据模型的 JPA 持久性

java - 有没有办法自动调用对象图上的所有 getter 方法?

java - JTextField 滚动

java - 如何获取 HTMLEditor、JavaFX 中的节点 ID

java - 如何在 Spring Boot 的构造函数中读取 application.properties 值?

java - 如何设置PDRadioButton的检查