在 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