HOWTO · Java

在 Java 中將 Boolean 轉換為 Int

這篇文章討論瞭如何在 Java 中將 boolean 轉換為 int。

本教程介紹瞭如何在 Java 中將 boolean 轉換為 int。你可以找到一些示例程式作為更好地理解該主題的指南。

關鍵字 boolean 是 Java 中的一種資料型別,用於儲存兩個值,即 truefalse。另一方面,int 用於儲存整數。在本文中,你將學習如何使用一些內建方法或自定義程式碼在 Java 中將 boolean 轉換為 int。我們將使用三元運算子、compareTo() 方法和 Apache 公共庫。繼續閱讀!

在 Java 中使用三元運算子將布林值轉換為整數

在這個例子中,我們使用三元運算子將 boolean 值轉換為 int。根據 boolean 值,我們得到 1 或 0 結果;這是我們可以應用的基本單線解決方案之一。

public class SimpleTesting {
  public static void main(String[] args) {
    boolean b = true;
    int i = b ? 1 : 0;
    System.out.println(i);
    b = false;
    i = b ? 1 : 0;
    System.out.println(i);
  }
}

輸出:

1
0

在 Java 中使用 if 條件將 boolean 轉換為 int

如果要使用 if 條件,請使用此程式碼返回基於 boolean 對應的 int 值。如果 boolean 值為 true,則返回 1,如果 boolean 值為 false,則返回 0。請參考下面的示例:

public class SimpleTesting {
  public static void main(String[] args) {
    boolean b = true;
    int result = boolToInt(b);
    System.out.println(result);
    b = false;
    result = boolToInt(b);
    System.out.println(result);
  }
  static int boolToInt(boolean b) {
    if (b)
      return 1;
    return 0;
  }
}

輸出:

1
0

使用 Java 中的 Apache 庫將 boolean 轉換為 int

如果你熟悉 Apache 公共庫,則可以使用 BooleanUtils 類的 toInteger() 方法。它在轉換為真或假後返回 int 值。你可以這樣做:

import org.apache.commons.lang3.BooleanUtils;
public class SimpleTesting {
  public static void main(String[] args) {
    boolean b = true;
    int result = BooleanUtils.toInteger(b);
    System.out.println(result);

    b = false;
    result = BooleanUtils.toInteger(b);
    System.out.println(result);
  }
}

輸出:

1
0

使用 Java 中的 compareTo() 方法將 boolean 轉換為 int

compareTo() 方法屬於 Boolean 類,用於比較兩個 boolean 值並根據比較返回一個整數值。如果兩個 boolean 值相等,則返回 0,如果值較小則返回 -1,如果值較大則返回 1。檢查此示例程式碼:

public class SimpleTesting {
  public static void main(String[] args) {
    Boolean a = false;
    int result = a.compareTo(false);
    System.out.println(result);
    result = a.compareTo(true);
    System.out.println(result);
    a = true;
    result = a.compareTo(false);
    System.out.println(result);
  }
}

輸出:

0
-1
1

使用 Java 中的 indexOf() 方法將 boolean 轉換為 int

這個過程不是一個簡單的方法,但你仍然可以使用它來將 boolean 值轉換為 int 型別。此過程是一種單行解決方案,可用於獲取整數值。檢查這個例子:

public class SimpleTesting {
  public static void main(String[] args) {
    boolean b = true;
    int i = -("false".indexOf("" + b));
    System.out.println(i);
    b = false;
    i = -("false".indexOf("" + b));
    System.out.println(i);
  }
}

輸出:

1
0

使用 Java 中的 shift 運算子將 boolean 轉換為 int

你還可以使用右移運算子在 Java 中將 boolean 轉換為 intBoolean 類的 hashCode() 方法返回雜湊碼,然後使用移位運算子進行更改。請參考下面的示例程式:

public class SimpleTesting {
  public static void main(String[] args) {
    boolean b = true;
    int result = 1 & Boolean.hashCode(b) >> 1;
    System.out.println(result);

    b = false;
    result = 1 & Boolean.hashCode(b) >> 1;
    System.out.println(result);
  }
}

輸出:

1
0