OVH Cloud OVH Cloud

Problème de pointeurs implicites

1 réponse
Avatar
Thibaut Desmarest
Bonjour,

Mon problème vient du fait que comme les pointeurs sont gérés de manière
implicite par java, je ne sais jamais où j'en suis, est ce que je passe
une référence, est ce que ca va changer etc...

Le problème vient du fait que j'essaie de garder deux états d'un même
objet. Un état à l'instant T, et un état à l'instant T - 1;

Or, je ne sais pas si le bout de code suivant est correct :

(1) selectedRowsAtTMoinsUn = selectedRows;
(2) selectedRows = ((JTable) e.getSource()).getSelectedRows();


je précise que selectedRows et selectedRowsAtTMoinsUn sont des int[].
Donc, est ce que quand j'écris la ligne (2), je ne fais pas une boulette
par rapport à la (1) ?
Est ce que à la ligne (1) je ne passe qu'une référence vers selectedRows
qui est ensuite modifié, ce qui fait que j'ai toujours la même chose
dans selectedRows et selectedRowsAtTMoinsUn, ou est ce que j'ai bien le
fonctionnement que j'attend ?

Sinon, comment faire pour simplement copier selectedRows dans
selectedRowsAtTMoinsUn avant de lui affecter sa nouvelle valeur ?

Merci d'avance,


Thibaut

1 réponse

Avatar
Isammoc
je précise que selectedRows et selectedRowsAtTMoinsUn sont des int[].
Donc, est ce que quand j'écris la ligne (2), je ne fais pas une boulette
par rapport à la (1) ?


vu que c'est un tableau, ce n'est pas valable...

Est ce que à la ligne (1) je ne passe qu'une référence vers selectedRows
qui est ensuite modifié, ce qui fait que j'ai toujours la même chose
dans selectedRows et selectedRowsAtTMoinsUn, ou est ce que j'ai bien le
fonctionnement que j'attend ?

Sinon, comment faire pour simplement copier selectedRows dans
selectedRowsAtTMoinsUn avant de lui affecter sa nouvelle valeur ?


for(int i=0; i < courant.length; i++)
{
ancien[i] = courant.length[i];
}

Merci d'avance,

Thibaut


de rien...