Bonjour,
J'explique : j'ai une liste de produits dans un Set , et un utilisateur peut ajouter un produit à son panier , panier qui est en faite aussi un Set de produit.
Ajout d'un article au panier :
où cartProducts est un Set et prod est un Produit de mon Set de produits
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 // a product has been choosed , we send the shopping cart page for(Product prod:products) { if(prod.getId()==selectedProd)//we find the selected Prod { cartProducts.add(prod); } }
Tout fonctionne bien mais maintenant je désire testé si l'élément s'y trouve déjà où non. Si il s'y trouve , j'incrémente la quantité.
Il se trouve qu'après ceci , aussi bien myProd.getQuantity() que prod.getQuantity() retourne la même valeur..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 // a product has been choosed , we send the shopping cart page for(Product prod:products) { if(prod.getId()==selectedProd)//we find the selected Prod { if(cartProducts.contains(prod)) //if we already added it in our cartShop { for(Product myProd:cartProducts) {//We get it and increment the qty if(myProd.getId()==prod.getId()) { myProd.setQuantity(myProd.getQuantity()+1); System.out.println(myProd.getQuantity() + " " + prod.getQuantity()); } } } else cartProducts.add(prod); } }
Comment puis-je faire pour change l'état d'un sans modifier l'autre?
Merci d'avance à vous.
Partager