Recupere un boolean dans une Jtable
Résolu
MegaBob
Messages postés
27
Date d'inscription
Statut
Membre
Dernière intervention
-
MegaBob Messages postés 27 Date d'inscription Statut Membre Dernière intervention -
MegaBob Messages postés 27 Date d'inscription Statut Membre Dernière intervention -
Bonjour, j'ai une jTable avec une case a cocher(Boolean) et je voudrais récupéré cette valeur pour savoir ci elle est a true ou false.
[code]
boolean Test;
for(int i=0;i<m_Gestion.Ordonnance.GetLignes();i++) {
Test= m_Gestion.Ordonnance.GetJTable().getValueAt(i,5);
if(Test=true){
Medoc += m_Gestion.Ordonnance.GetJTable().getValueAt(i,0)+"\n";
Medoc += m_Gestion.Ordonnance.GetJTable().getValueAt(i,4)+"\t\t";
Medoc += m_Gestion.Ordonnance.GetJTable().getValueAt(i,2)+"\n\n";
m_Gestion.m_Impression.GetTextArea().setText(Medoc);
}
}
[/code]
Mais il me dit
[code]
found : java.lang.Object
required: boolean
Test= m_Gestion.Ordonnance.GetJTable().getValueAt(i,5);
1 error
[/code]
Mon boolean dans la colonne 5
Merci de votre aide
[code]
boolean Test;
for(int i=0;i<m_Gestion.Ordonnance.GetLignes();i++) {
Test= m_Gestion.Ordonnance.GetJTable().getValueAt(i,5);
if(Test=true){
Medoc += m_Gestion.Ordonnance.GetJTable().getValueAt(i,0)+"\n";
Medoc += m_Gestion.Ordonnance.GetJTable().getValueAt(i,4)+"\t\t";
Medoc += m_Gestion.Ordonnance.GetJTable().getValueAt(i,2)+"\n\n";
m_Gestion.m_Impression.GetTextArea().setText(Medoc);
}
}
[/code]
Mais il me dit
[code]
found : java.lang.Object
required: boolean
Test= m_Gestion.Ordonnance.GetJTable().getValueAt(i,5);
1 error
[/code]
Mon boolean dans la colonne 5
Merci de votre aide
A voir également:
- Recupere un boolean dans une Jtable
- Comment recuperer un message supprimé sur whatsapp - Guide
- Comment récupérer un document dans le presse-papier samsung - Guide
- Comment recuperer une video sur youtube - Guide
- Comment récupérer un compte facebook piraté - Guide
- Recuperer le son d'une video - Guide
6 réponses
Salut,
Et comme ça?
Les types primitifs (char/int/float/etc...) possèdent un equivalent Objet (Integer/Boolean etc...) que tu peux attribuer directement à une variable de type primitive.
Et comme ça?
Test= (Boolean)m_Gestion.Ordonnance.GetJTable().getValueAt(i,5);
Les types primitifs (char/int/float/etc...) possèdent un equivalent Objet (Integer/Boolean etc...) que tu peux attribuer directement à une variable de type primitive.
Merci cella marche mais lorsque Test n'est pas égale a true il le met a Null et mon programme plante je ne comprend pas?
oui je vois pas pourquoi il ne sort pas quand il arrive au if?
En meme temps je comprend pas comment un boolean peut etre a null.
Tu a une idée du code?
En meme temps je comprend pas comment un boolean peut etre a null.
Tu a une idée du code?
Boolean c'est le type objet booléen.
boolean c'est le type primitif booléen.
Un boolean peut prendre true ou false. Boolean c'est pareil mais comme c'est un objet ça peut aussi être null.
Donc mettons que tu aies ça:
Si bObj était égal à true ou fals, la conversion se serait faite sans soucis. Mais comme bObj est égal à null, java ne sait pas convertir, donc ça foire.
Voilà. C'est pour ça qu'il faut contrôler la valeur avant de l'attribuer à Test.
Autre chose, tu fais:
Là tu es en train d'attribuer une valeur à Test alors que tu veux faire une comparaison.
Ce que tu fais c'est l'équivalent de:
Et donc ton if est toujours vrai.
Il faut faire == pour faire une comparaison, sachant aussi que c'est plus élégant de faire:
if(Test) plutôt que if(Test==true).
Tout comme if(!Test) est plus élégant que if(Test == false)
Voilà :-)
boolean c'est le type primitif booléen.
Un boolean peut prendre true ou false. Boolean c'est pareil mais comme c'est un objet ça peut aussi être null.
Donc mettons que tu aies ça:
Boolean bObj = null; boolean bPrim = bObj;
Si bObj était égal à true ou fals, la conversion se serait faite sans soucis. Mais comme bObj est égal à null, java ne sait pas convertir, donc ça foire.
Voilà. C'est pour ça qu'il faut contrôler la valeur avant de l'attribuer à Test.
Autre chose, tu fais:
if(Test=true)
Là tu es en train d'attribuer une valeur à Test alors que tu veux faire une comparaison.
Ce que tu fais c'est l'équivalent de:
Test = true; if(Test)
Et donc ton if est toujours vrai.
Il faut faire == pour faire une comparaison, sachant aussi que c'est plus élégant de faire:
if(Test) plutôt que if(Test==true).
Tout comme if(!Test) est plus élégant que if(Test == false)
Voilà :-)
Ok je vais changer ca alors merci de l'info. Mais pour mon boolean je fais quoi pour qu'il me renvoie true ou false seulement? je ne vois pas trop quoi faire comme vérification pour ne pas avoir null?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question