Kotlinのブール値 - 整数間の変換方法はありませんか?私はいつも話しています:ブール整数 - Kotlinでの変換
true -> 1
false -> 0
もしそうでないなら、それをする慣用方法は何ですか?
Kotlinのブール値 - 整数間の変換方法はありませんか?私はいつも話しています:ブール整数 - Kotlinでの変換
true -> 1
false -> 0
もしそうでないなら、それをする慣用方法は何ですか?
あなたは明確にすべきフィールドに0または1を返すAPIへのリクエストを作る
fun Boolean.toInt() = if (this) 1 else 0
いいえ変換する方法はありません。あなただけのコードの下に、以下で変換することができ
val output = if (input) 1 else 0
のようなブールの拡張機能を書くことができます真/偽になります。同時に、私は同じタイプのフィールドのために同様のAPIに他のリクエストを行い、真/偽を返します。私はすべてのAPIからその応答を処理するコードを共有したいと思います。
この場合、マッピングライブラリ(jacksonなど)のコンバータを使用するのが最適なオプションと思われます。
普通のKotlinでは、この目的のために拡張機能/プロパティを使用できます。
私は、この場合には拡張プロパティでBoolean
を拡張することをお勧めしたい:
val Boolean.int
get() = if (this) 1 else 0
今、あなたは、単に、このためのユースケースになりますどのようなあなたのコード
で
true.int
を行うことができますか? – nhaarman明らかに真/偽でなければならないフィールドに対して、0または1を返す要求をAPIに行います。同時に、私は同じタイプのフィールドのために同様のAPIに他のリクエストを行い、真/偽を返します。私はすべてのAPIからその応答を処理するコードを共有したいと思います。 – pk1914