String para Boolean em Java

Rupam Yadav 12 outubro 2023
  1. Converter uma string em boolean ou Boolean utilizando Boolean.parseBoolean(string) em Java
  2. Converter uma String para boolean ou Boolean utilizando Boolean.valueOf(string) em Java
  3. Converter uma string para boolean e Boolean utilizando BooleanUtils.toBoolean(string) em Java
String para Boolean em Java

Hoje, vamos analisar três métodos que nos ajudam a converter uma string Java para um booleano. Podemos utilizar um valor booleano com um primitivo boolean ou um objecto Boolean. Embora a classe Boolean envolva o primitivo boolean, veremos os casos de ambos nos exemplos que se seguem.

Converter uma string em boolean ou Boolean utilizando Boolean.parseBoolean(string) em Java

O primeiro exemplo utiliza o método parseBoolean(string) da classe Boolean. Ele analisa directamente ou converte uma determinada string para devolver um booleano primitivo que representa a string. Uma coisa importante a notar é que este método retorna false quando um valor de string diferente de true ou false é passado.

Como sabemos que parseBoolean() retorna um boolean, podemos utilizar o valor retornado como boolean bool e Boolean boolObj porque a classe Boolean tem o primitivo boolean nela.

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);
  }
}

Resultado:

Primitive boolean: false
Boolean object: false

Converter uma String para boolean ou Boolean utilizando Boolean.valueOf(string) em Java

Outra função estática da classe Boolean para converter uma string em booleano é valueOf(). Pega na string como argumento e retorna um valor Booleano que representa a string. Abaixo podemos ver que exampleString é inicializada com true como string, e passamos para o método 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);
  }
}

Resultado:

Primitive boolean: true
Boolean object: true

Converter uma string para boolean e Boolean utilizando BooleanUtils.toBoolean(string) em Java

Em ambos os métodos acima, as funções retornam sempre false se o valor da string for algo diferente de true ou false. Este problema pode ser resolvido utilizando o método BooleanUtils.toBoolean() da biblioteca comum apache.

Utilizamos a seguinte dependência no nosso projecto para incluir a biblioteca.

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

No exemplo seguinte, temos três strings: yes, no, e true. E para converter todos estes valores em booleano, utilizaremos BooleanUtils.toBoolean(string) e passaremos a string como um argumento. Na saída, podemos ver que todos os valores foram analisados correctamente. O yes é convertido para true, e o no é convertido para 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);
  }
}

Resultado:

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 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

Artigo relacionado - Java Boolean

Artigo relacionado - Java String