HOWTO · Java
Booleano a String em Java
Este tutorial ensina como converter um valor booleano para uma string em Java
Nesta página
Em Java, o tipo primitivo boolean e a classe wrapper Boolean representam true ou false. Para um valor primitivo, use String.valueOf(boolean) ou a sobrecarga estática Boolean.toString(boolean). Um objeto Boolean não nulo também pode usar o método de instância toString(). A concatenação e a formatação são úteis quando o valor faz parte de uma mensagem maior. Essas conversões produzem texto em minúsculas: true torna-se "true" e false torna-se "false".
Converter um boolean primitivo em string com String.valueOf(boolean)
String.valueOf(boolean) é um método estático de String que aceita um boolean primitivo e retorna sua representação textual. É uma opção direta quando o valor já é primitivo; o resultado pode ser armazenado, comparado ou passado a um método que espera uma String. O valor de entrada continua sendo booleano; o valor retornado é texto, portanto não serve para condições booleanas posteriores sem antes ser convertido novamente.
Execute este exemplo:
public class BooleanStringExample {
public static void main(String[] args) {
boolean active = true;
String text = String.valueOf(active);
System.out.println(text);
}
}
true
Esta forma também funciona com false e retorna a string correspondente em minúsculas. Use a sobrecarga para tipos primitivos quando a variável de origem estiver declarada como boolean; o Java também pode desembrulhar um Boolean não nulo quando um argumento primitivo é necessário. Se a referência wrapper puder ser nula, trate essa possibilidade antes de passá-la a um método que espera um tipo primitivo, pois desembrulhar null causa uma NullPointerException.
Converter um valor Boolean em string com Boolean.toString()
Boolean é a classe wrapper, enquanto boolean é o tipo primitivo. Um objeto Boolean não nulo pode chamar o método de instância toString(). A classe também oferece a sobrecarga estática Boolean.toString(boolean), que aceita diretamente um valor primitivo e evita criar um wrapper apenas para fazer a conversão. O exemplo mostra as duas formas, para que você escolha de acordo com o tipo que já tem. Os rótulos e a saída exibidos neste exemplo, incluindo “Instance” e “Static”, permanecem em inglês porque os blocos de código e de saída foram preservados sem alterações.
public class BooleanStringExample {
public static void main(String[] args) {
Boolean enabled = Boolean.FALSE;
String instanceText = enabled.toString();
boolean active = true;
String staticText = Boolean.toString(active);
System.out.println("Instance: " + instanceText);
System.out.println("Static: " + staticText);
}
}
Instance: false
Static: true
A chamada de instância exige uma referência não nula: se enabled for null, enabled.toString() causa uma NullPointerException. A sobrecarga estática é chamada na classe e recebe um valor primitivo, por isso não acessa uma referência wrapper. Se você receber um Boolean que pode ser nulo, decida o que null deve significar antes de chamar o método de instância ou desembrulhar o valor. Por exemplo, você pode verificar a referência e fornecer uma string alternativa quando ela for nula.
Converter um valor boolean ou Boolean em string por concatenação
Quando uma string já está sendo construída, o Java converte um boolean primitivo em texto minúsculo durante a concatenação. Um wrapper Boolean não nulo também é convertido no texto correspondente. Coloque a string primeiro para deixar o rótulo fácil de ler, como em "Enabled: " + enabled. Essa abordagem é prática para mensagens e registros; para uma conversão isolada, um método explícito comunica melhor a intenção. Os rótulos e a saída deste exemplo, incluindo “Active”, “Enabled” e “Available”, permanecem em inglês porque os blocos de código e de saída foram preservados sem alterações.
public class BooleanStringExample {
public static void main(String[] args) {
boolean active = true;
Boolean enabled = Boolean.FALSE;
System.out.println("Active: " + active);
System.out.println("Enabled: " + enabled);
}
}
Active: true
Enabled: false
Concatenar um Boolean nulo produz o texto "null"; isso não chama toString() nessa referência. É diferente de enabled.toString(), que causa uma NullPointerException para a mesma referência nula. Lembre-se dessa diferença ao montar a saída: a concatenação representa o valor nulo com a palavra null, enquanto o método de instância exige um valor Boolean real. Se o texto for destinado a uma pessoa ou a um formato externo, escolha uma alternativa explícita quando null puder causar ambiguidade.
Formatar um boolean como string com String.format()
Use String.format() quando o valor booleano fizer parte de uma mensagem formatada maior ou quando a mensagem contiver vários valores. A conversão %b formata um argumento Boolean como true ou false em minúsculas; é útil para criar modelos legíveis, embora acrescente recursos de formatação quando se trata de um único valor. Este exemplo mantém a string de formato e o valor juntos, deixando clara a posição do boolean. Os rótulos e a saída exibidos permanecem em inglês porque os blocos de código e de saída foram preservados sem alterações.
public class BooleanStringExample {
public static void main(String[] args) {
boolean available = true;
String message = String.format("Available: %b", available);
System.out.println(message);
}
}
Available: true
Para uma conversão simples, prefira String.valueOf(boolean) ou Boolean.toString(boolean). Use concatenação para um rótulo curto e String.format() quando um modelo deixar mais clara a estrutura de uma mensagem longa. Em todos os casos, considere o tipo de origem: um valor primitivo sempre tem um valor booleano, enquanto uma referência Boolean pode ser nula.