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

  1. 在 Java 中使用 Boolean.parseBoolean(string) 将一个字符串转换为 booleanBoolean
  2. 在 Java 中使用 Boolean.valueOf(string) 将字符串转换为 booleanBoolean
  3. 在 Java 中使用 BooleanUtils.toBoolean(string) 将一个字符串转换为 booleanBoolean

今天,我们将看三个方法,帮助我们将一个 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

相关文章 - Java Boolean

  • Java 中将布尔值转为字符串
  • 相关文章 - Java String

  • 如何将 Java 字符串转换为字节
  • 如何从 Java 中的字符串中删除子字符串