在 Java 中将字符串转为布尔值

Rupam Yadav 2023年10月12日
  1. 在 Java 中使用 Boolean.parseBoolean(string) 将一个字符串转换为 booleanBoolean
  2. 在 Java 中使用 Boolean.valueOf(string) 将字符串转换为 booleanBoolean
  3. 在 Java 中使用 BooleanUtils.toBoolean(string) 将一个字符串转换为 booleanBoolean
在 Java 中将字符串转为布尔值

今天,我们将看三个方法,帮助我们将一个 Java 字符串转换为布尔值。我们可以用一个原始 booleanBoolean 对象一起使用。虽然 Boolean 类封装了基元 boolean,但我们将在下面的例子中看到这两种情况。

在 Java 中使用 Boolean.parseBoolean(string) 将一个字符串转换为 booleanBoolean

第一个例子使用 Boolean 类的 parseBoolean(string) 方法。它直接解析或转换一个给定的字符串,返回一个代表该字符串的原始 boolean。需要注意的是,当传递的字符串值不是 truefalse 时,该方法将返回 false

由于我们知道 parseBoolean() 返回的是一个 boolean,我们可以将返回的值作为 boolean boolboolean 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) 将字符串转换为 booleanBoolean

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) 将一个字符串转换为 booleanBoolean

在上述两种方法中,如果字符串值不是 truefalse,函数总是返回 false。这个问题可以使用 apache 通用库的 BooleanUtils.toBoolean() 方法来解决。

我们在项目中使用以下依赖关系来包含该库。

 <dependency>
     <groupId>org.apache.commons</groupId>
     <artifactId>commons-lang3</artifactId>
     <version>3.11</version>
 </dependency>

在下面的例子中,我们有三个字符串。yesnotrue。为了将所有这些值转换为布尔值,我们将使用 BooleanUtils.toBoolean(string) 并将字符串作为参数传递。在输出中,我们可以看到所有的值都被正确解析。yes 被转换为 trueno 被转换为 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 Yadav
Rupam Yadav avatar Rupam Yadav avatar

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

相关文章 - Java Boolean

相关文章 - Java String