在 Java 中將字串轉為布林值
-
在 Java 中使用
Boolean.parseBoolean(string)將一個字串轉換為boolean或Boolean -
在 Java 中使用
Boolean.valueOf(string)將字串轉換為boolean或Boolean -
在 Java 中使用
BooleanUtils.toBoolean(string)將一個字串轉換為boolean和Boolean
今天,我們將看三個方法,幫助我們將一個 Java 字串轉換為布林值。我們可以用一個原始 boolean 或 Boolean 物件一起使用。雖然 Boolean 類封裝了基元 boolean,但我們將在下面的例子中看到這兩種情況。
在 Java 中使用 Boolean.parseBoolean(string) 將一個字串轉換為 boolean 或 Boolean
第一個例子使用 Boolean 類的 parseBoolean(string) 方法。它直接解析或轉換一個給定的字串,返回一個代表該字串的原始 boolean。需要注意的是,當傳遞的字串值不是 true 或 false 時,該方法將返回 false。
由於我們知道 parseBoolean() 返回的是一個 boolean,我們可以將返回的值作為 boolean bool 和 boolean boolObj,因為 boolean 類中有原始 boolean。
public class StringToBoolean {
public static void main(String[] args) {
String exampleString = "false";
boolean bool = Boolean.parseBoolean(exampleString);
Boolean boolObj = Boolean.parseBoolean(exampleString);
System.out.println("Primitive boolean: " + bool);
System.out.println("Boolean object: " + boolObj);
}
}
輸出:
Primitive boolean: false
Boolean object: false
在 Java 中使用 Boolean.valueOf(string) 將字串轉換為 boolean 或 Boolean
Boolean 類的另一個將字串轉換為布林值的靜態函式是 valueOf()。它將字串作為引數,並返回一個代表該字串的 Boolean 值。下面我們可以看到,exampleString 是以 true 作為字串初始化的,我們把它傳遞給 valueOf(string) 方法。
public class StringToBoolean {
public static void main(String[] args) {
String exampleString = "true";
boolean bool = Boolean.valueOf(exampleString);
Boolean boolObj = Boolean.valueOf(exampleString);
System.out.println("Primitive boolean: " + bool);
System.out.println("Boolean object: " + boolObj);
}
}
輸出:
Primitive boolean: true
Boolean object: true
在 Java 中使用 BooleanUtils.toBoolean(string) 將一個字串轉換為 boolean 和 Boolean
在上述兩種方法中,如果字串值不是 true 或 false,函式總是返回 false。這個問題可以使用 apache 通用庫的 BooleanUtils.toBoolean() 方法來解決。
我們在專案中使用以下依賴關係來包含該庫。
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.11</version>
</dependency>
在下面的例子中,我們有三個字串。yes、no 和 true。為了將所有這些值轉換為布林值,我們將使用 BooleanUtils.toBoolean(string) 並將字串作為引數傳遞。在輸出中,我們可以看到所有的值都被正確解析。yes 被轉換為 true,no 被轉換為 false。
import org.apache.commons.lang3.BooleanUtils;
public class StringToBoolean {
public static void main(String[] args) {
String exampleString = "yes";
String exampleString1 = "no";
String exampleString2 = "true";
boolean bool1 = BooleanUtils.toBoolean(exampleString);
Boolean boolObj1 = BooleanUtils.toBoolean(exampleString);
boolean bool2 = BooleanUtils.toBoolean(exampleString1);
Boolean boolObj2 = BooleanUtils.toBoolean(exampleString1);
boolean bool3 = BooleanUtils.toBoolean(exampleString2);
Boolean boolObj3 = BooleanUtils.toBoolean(exampleString2);
System.out.println("Primitive boolean 1: " + bool1);
System.out.println("Boolean object 1: " + boolObj1);
System.out.println("Primitive boolean 2: " + bool2);
System.out.println("Boolean object 2: " + boolObj2);
System.out.println("Primitive boolean 3 : " + bool3);
System.out.println("Boolean object 3: " + boolObj3);
}
}
輸出:
Primitive boolean 1: true
Boolean object 1: true
Primitive boolean 2: false
Boolean object 2: false
Primitive boolean 3 : true
Boolean object 3: true
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn