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:
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à :-)
...et euh..ouais nan bah c'est tout...