Ir ao conteúdo
  • Cadastre-se

String em Booleano


Posts recomendados

Ola de novo tenho esse código aqui.

 

 public String isFreezer() {
        if (Freezer == true) {
            return "Existe";
        } else {
            return "Não Existe";
        }
    }

    public void setFreezer(boolean Freezer) {
        this.Freezer = Freezer;
    }

Queria usar isso Scanner mas preciso que a palavra "Sim" ou "Freezer" seja igual a true algo como "Sim" = true; mas não roda. 

Link para o comentário
Compartilhar em outros sites

Só comparar com o equals () 

 

no caso do exemplo, eu coloquei a variação que ignora case sensitive.

 

Scanner scn = new Scanner(System.in);
String Opcao = scn.next();
bool Freezer = ((Opcao.equalsIgnoreCase("Freezer") || Opcao.equalsIgnoreCase("Sim"));
	




  
  

 

O código lê do teclado, compara com "Freezer" ou "Sim" e retorna true ou false

Link para o comentário
Compartilhar em outros sites

Desculpe ainda não roda, veja o Código completo.

 

package exercicio2;

/**
 *
 * @author Augusto
 */
public class Geladeira extends Eletrodomestico {

    private int Capacidade;
    private boolean Freezer;

    public int getCapacidade() {
        return Capacidade;
    }

    public void setCapacidade(int Capacidade) {
        this.Capacidade = Capacidade;
    }

    public String isFreezer() {
        Boolean Freezer = ((Opcao.equalsIgnoreCase("Sim");
        if (Freezer == true) {
            return "Existe";
        } else {
            return "Não Existe";
        }
    }

    public void setFreezer(boolean Freezer) {
        this.Freezer = Freezer;
    }
    
    @Override
    public String toString() {
        return "Marca: " + getMarca() + "\n"
                + "Peso: " + getPeso() + "\n"
                + "Capacidade: " + getCapacidade() + "\n"
                + "Freezer: " + isFreezer();
    }

   
}

Classe java principal

package exercicio2;

import java.util.Scanner;

/**
 *
 * @author Augusto
 */
public class Exercutar {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {

        Domestico D = new Domestico();

        Scanner scn = new Scanner(System.in);
        System.out.println("Teste");
        System.out.println("Escreva sim");

        String Opcao = scn.next();
        boolean Freezer = Opcao.equalsIgnoreCase("Sim");

        D.setMarca("Brastemp");
        D.setPeso(10);
        D.setQNTBocas(6);
        D.setCapacidadeForno("Media");

        System.out.println("");
        System.out.println(D);

        Industrial I = new Industrial();

        I.setMarca("Brastemp");
        I.setPeso(100);
        I.setQNTBocas(26);
        I.setTipoPintura("Preto");

        System.out.println("");
        System.out.println(I);

        Geladeira G = new Geladeira();
        G.setMarca("Samsung");
        G.setPeso(15);
        G.setCapacidade(255);
        G.isFreezer(Opcao);

        System.out.println("");
        System.out.println(G);
        System.out.println("");

    }
}

 

Link para o comentário
Compartilhar em outros sites

Tenta usar isso no lugar:

 

package exercicio2;

public class Geladeira{

    private int Capacidade;
    private boolean Freezer;

    public int getCapacidade() {
        return Capacidade;
    }

    public void setCapacidade(int Capacidade) {
        this.Capacidade = Capacidade;
    }

    public Boolean isFreezer() {
       return this.Freezer;
    }

    public void setFreezer(boolean Freezer) {
        this.Freezer = Freezer;
    }
   
    public void Exibir(){
    
        System.out.println("Marca: " + this.getMarca());
        System.out.println("Peso: " + this.getPeso());
        System.out.println("Capacidade: " + this.getCapacidade());
        System.out.println("Freezer: " + (this.isFreezer()?"Existe":"Não Existe!"));
    }    
}

 

package exercicio2;

import java.util.Scanner;

/**
 *
 * @author Augusto
 */
public class Exercutar {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {

        Domestico D = new Domestico();

        Scanner scn = new Scanner(System.in);
        System.out.println("Teste");
        System.out.println("Escreva sim");

        String Opcao = scn.next();
        boolean Freezer = Opcao.equalsIgnoreCase("Sim");

        D.setMarca("Brastemp");
        D.setPeso(10);
        D.setQNTBocas(6);
        D.setCapacidadeForno("Media");

        System.out.println("");
        System.out.println(D);

        Industrial I = new Industrial();

        I.setMarca("Brastemp");
        I.setPeso(100);
        I.setQNTBocas(26);
        I.setTipoPintura("Preto");

        System.out.println("");
        System.out.println(I);

        Geladeira G = new Geladeira();
        G.setMarca("Samsung");
        G.setPeso(15);
        G.setCapacidade(255);
        G.setFreezer(Freezer);

        System.out.println("");
        G.Exibir();
        System.out.println("");

    }
}

 

Link para o comentário
Compartilhar em outros sites

O que eu fiz foi:

 

- Voltar o Getter do Freezer para o padrão

 

    public Boolean isFreezer() {
       return this.Freezer;
    }

 

- Criar uma função Exibir que substituiu a sua toString, já que ela sobrescrevia uma função que "não deveria".

 

    public void Exibir(){
    
        System.out.println("Marca: " + this.getMarca());
        System.out.println("Peso: " + this.getPeso());
        System.out.println("Capacidade: " + this.getCapacidade());
        System.out.println("Freezer: " + (this.isFreezer()?"Existe":"Não Existe!"));
    } 

 

Repare nisso:

System.out.println("Freezer: " + (this.isFreezer()?"Existe":"Não Existe!"));

Isso equivale a

if(this.isFreezer()){
  System.out.println("Existe");
}else{
 
  System.out.println("Não Existe!");

}

 

É só uma outra forma de fazer, chamada de IF TERNÁRIO.

 

E na principal (main) eu mexi aqui só:

 

 boolean Freezer = Opcao.equalsIgnoreCase("Sim"); //Aqui Freezer retorna true se digitado SIM

 Geladeira G = new Geladeira();
 G.setMarca("Samsung");
 G.setPeso(15);
 G.setCapacidade(255);
 G.setFreezer(Freezer); //Seto a variável Freezer para o Opcao.equalsIgnoreCase("Sim");

 System.out.println("");
 G.Exibir(); //Chamo o método Exibir da classe Geladeira (Aquele que criei lá na classe Geladeira)
 System.out.println("");

 

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...