在Java中将boolean转换为int

在Java中将boolean转换为int最常用的方法是什么?


int myInt = myBoolean ? 1 : 0;

^^

PS:true = 1和false = 0


int val = b? 1 : 0;

使用三元运算符是最简单,最有效和最可读的方式来执行你想要的。 我鼓励你使用这个解决方案。

但是,我无法抗拒提出一种替代性,人为化,低效率,难以解读的解决方案。

int boolToInt(Boolean b) {
    return b.compareTo(false);
}

嘿,人们喜欢投票给这么酷的答案!

编辑

顺便说一下,我经常看到从布尔值到整型值的转换,唯一目的是比较两个值(通常在compareTo方法的实现中)。 在这些特定情况下, Boolean#compareTo是一种方法。

编辑2

Java 7引入了一个新的效用函数,可直接与原始类型一起使用, Boolean#compare (Thanks shmosel)

int boolToInt(boolean b) {
    return Boolean.compare(b, false);
}
链接地址: http://www.djcxy.com/p/40239.html

上一篇: Convert boolean to int in Java

下一篇: Check if at least two out of three booleans are true