Pessoal seguinte: tenho uma Classe Atendimento com um campo fumante como boolean, e uma classe AtedimentoBussiness onde verifica as regras de negocio
public class Atendimento{
private boolean fumante;
//metodos getter e setter
}
public class AtendimentoBusiness{
public Atendimento incluir(Atendimento atendimento){
//Nao consigo realizar esse teste pois o valor é boolean
if (atendimento.isfumante == null){
atendimento.setfumante = false;
}
}
}
Erro: the == operator is undefined for the argument type boolean
Por default os atributos primitivos como int double etc são inicializados com 0, e os atributos do tipo boolean é inicializado com false, nesse caso do seu if ele nunca será null!!!
Vou tentar te ajudar com a lógica. Porque você não deixa essa variável fumante inicializado como false. Neste caso no seu formulário ou sei la aonde você irá utilizar, você só ira atribuir true caso a pessoa ou o atendimento seja fumante.
Caso isso que eu te falei não dê certo passe qual o objetivo. Variáveis do tipo boolean em JAVA só aceitam true ou false.
Espero ter ajudado....
Então pessoal, estou tentando implementar com a ideia do entanglement, mais não consegui ainda, conseguindo mando a solucao, no projeto a varialvel fumante precisa realmente ser boolean
Então pessoal, estou tentando implementar com a ideia do entanglement, mais não consegui ainda, conseguindo mando a solucao, no projeto a varialvel fumante precisa realmente ser boolean
O que tu queres fazer, colocar a false se for null já é feito automaticamente quando crias a variavel. Um boolean nunca é null, é logo false na criação.
Assim, podes retirar as duas linhas do if sem qualquer problema
Se você for usar Boolean entenda que ele não é um tipo primitivo e sim um objeto. Se você não der new Boolean na variável ela será null, ou seja, você criou apenas uma referência daquele tipo e não um objeto. Sendo assim você tem que analisar o problema para conseguir usar essa solução, mas eu aconselho você a utilizar a variável como tipo primitivo boolean.
[quote=jonathan.rodrigues]Marcio,
Se você for usar Boolean entenda que ele não é um tipo primitivo e sim um objeto. Se você não der new Boolean na variável ela será null, ou seja, você criou apenas uma referência daquele tipo e não um objeto. Sendo assim você tem que analisar o problema para conseguir usar essa solução, mas eu aconselho você a utilizar a variável como tipo primitivo boolean.
[/quote]