この投稿では、Javaでブール値をintに変換する方法について説明します。規則は、trueが1、falseが0である必要があります。

1.三項演算子の使用

最も一般的で効率的で最も読みやすい方法は、三項演算子を使用することです。このアプローチは、プリミティブ型のブール値と Boolean クラス。

2.使用する Boolean.compareTo() 方法

使用できます Boolean.compareTo() ブールインスタンスを別のインスタンスと比較します。このアプローチは、プリミティブ型のブール値では機能しません。

3.使用する Boolean.compare() 方法

Java7は新しいユーティリティメソッドを導入しました Boolean.compare() 2つのブール値を比較します。これは内部で三項演算子を使用し、プリミティブ型のブール値と Boolean クラス。

4. ApacheCommonsLangの使用

ApacheCommonsLangも使用できます BooleanUtils.toInteger() これは、指定されたブール値に相当する整数を返します。

5.使用する String.length() 方法

このアプローチは、ブール値の文字列表現の長さの差が1であるという事実を利用しています。

 
プリミティブ型のブール値の場合、次のようなことができます。

6.使用する String.indexOf() 方法

別の間接的なアプローチには、 String.indexOf()、以下に示すように:

 
プリミティブ型のブール値の場合、次のようなことができます。

7.使用する Boolean.hashCode() 方法

最後に、いくつかの低レベルのビット操作ハックを含めましょう。

これで、Javaでブール値をintに変換することができます。

 
参照: https://stackoverflow.com/questions/3793650/convert-boolean-to-int-in-java