Java get and set methods for Boolean and char

Asked

Viewed 916 times

-2

I’m developing a code that uses get and set methods for data entry and processing. The goal is input with 9 values each with a data type, but I’m not getting the conversions for the char type and for the Boolean type.

package javaapplication2;

public class Geladeira {
    char classificacao;
    short garantia;
    String cor;
    int voltagem;
    long totalLitros;
    double preco;
    float consumo;
    byte puxadores;
    boolean iluminacao;

    //Metodo setter
    public void setClassificacao(char c){
        classificacao = c;
    }

    public void setGarantia(short g){
        garantia = g;
    }

    public void setCor (String a){
        cor = a;
    }

    public void setVoltagem(int v){
        voltagem = v;
    }

    public void setTotalLitros(long t){
        totalLitros = t;
    }

    public void setPreco(double p){
        preco = p;
    }

    public void setConsumo(float con){
        consumo = con;
    }

    public void setPuxadores(byte px){
        puxadores = px;
    }

    public void setIlumincao(boolean i){
        iluminacao = i;
    }


    //Metodo getter
    public char getClassificacao(){
        return classificacao;
    }

    public short getGarantia(){
        return garantia;
    }

    public String getCor(){
        return cor;
    }

    public int getVoltagem(){
        return voltagem;
    }

    public long getTotalLitros(){
        return totalLitros;
    }

    public double getPreco(){
        return preco;
    }

    public float getConsumo(){
        return consumo;
    }

    public byte getPuxadores(){
        return puxadores;
    }

    public boolean getIlimunacao(){
        return iluminacao;
    }

    void getGarantia(short parseShort) {
        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    }

}

And:

package javaapplication2;

import java.util.Scanner;

public class Principal {
    public static void main (String[] args){

        Scanner SC = new Scanner (System.in);

        Geladeira dadosG = new Geladeira();

        System.out.println("Digite a classificação energética: ");
        dadosG.setClassificacao(SC.next());

        System.out.println("Digite a garantia: ");
        dadosG.setGarantia(Short.parseShort(SC.nextLine()));

        System.out.println("Digite a cor: ");
        dadosG.setCor(SC.nextLine());

        System.out.println("Digite a voltagem: ");
        dadosG.setVoltagem(Integer.parseInt(SC.nextLine()));

        System.out.println("Digite o total de litros: ");
        dadosG.setTotalLitros(Long.parseLong(SC.nextLine()));

        System.out.println("Digite o preço: ");
        dadosG.setPreco(Double.parseDouble(SC.nextLine()));

        System.out.println("Digite o consumo: ");
        dadosG.setConsumo(Float.parseFloat(SC.nextLine()));

        System.out.println("Digite a quantidade de puxadores: ");
        dadosG.setPuxadores(Byte.parseByte(SC.nextLine()));

        System.out.println("Digite 1 se exitir ilimuninação interna ou 0 caso não exista: ");
        dadosG.getIlimunacao(Boolean.parseBollean(SC.nextLine()));


    }

}
  • parseBollean is misspelled, and waits for it to be written true or false and not 0 or 1. Whenever I’m in doubt confirm in the documentation

1 answer

0

You can use next with regex:

// Aceita um caracter de a até f
dadosG.setClassificacao(SC.next("[a-f]").charAt(0));

// Aceita um caracter de 0 até 1
dadosG.setIlumincao(!SC.next("[0-1]").equals("0"));

Remembering that you need to treat the Inputmismatch exception, in case what the user type is not what you expect.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.