java – 计算n个布尔值的“trues”数

Boolean a,b,c,d;

我想算一下trues的数量,每个结果都应该有自己的关联动作.也许是这样的:

int result = getResult(a,d);
switch (result) {
    case 0: break;
    case 1: break;
    case 2: break;
    case 3: break;
    default: break;
}

知道如何编写getResult方法体的方法很漂亮吗?在这个例子中,我只使用了四个,但它应该可以扩展到更多的布尔值.欢迎任何其他方式继续.

解决方法

一个可变方法
int getResult(boolean... vars) {
    int count = 0;
    for (boolean var : vars) {
        count += (var ? 1 : 0);
    }
    return count;
}

相关文章

HashMap是Java中最常用的集合类框架,也是Java语言中非常典型...
在EffectiveJava中的第 36条中建议 用 EnumSet 替代位字段,...
介绍 注解是JDK1.5版本开始引入的一个特性,用于对代码进行说...
介绍 LinkedList同时实现了List接口和Deque接口,也就是说它...
介绍 TreeSet和TreeMap在Java里有着相同的实现,前者仅仅是对...
HashMap为什么线程不安全 put的不安全 由于多线程对HashMap进...