Demande d'aide.. nouveau chez vous les Javaien(ne)
abgl007
-
KX Messages postés 16761 Date d'inscription Statut Modérateur Dernière intervention -
KX Messages postés 16761 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
voila un petit code java pour échanger deux valeurs mais sa marche pas, je ne sais pas pourquoi????
Aider moi a trouver l'erreur SVP..
merci
====================
voila un petit code java pour échanger deux valeurs mais sa marche pas, je ne sais pas pourquoi????
Aider moi a trouver l'erreur SVP..
merci
====================
package metier; import java.util.Scanner; public class MethodeEchangeValeurs { public static void main(String[] args) { int a, b; Scanner clavier = new Scanner(System.in); System.out.print("Entrez une valeur pour a : "); a = clavier.nextInt(); System.out.print("Entrez une valeur pour b : "); b = clavier.nextInt(); System.out.println("a = " + a + " et b = " + b); echange(a,b); System.out.println("Après l'échange "); System.out.println("a = " + a + " et b = " + b); } public static void echange(int x, int y) { int tmp = x; x=y; y=tmp; } }
EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI Merci d'y penser dans tes prochains messages. |
A voir également:
- Demande d'aide.. nouveau chez vous les Javaien(ne)
- Nouveau site coco chat - Accueil - Réseaux sociaux
- Comment créer un nouveau groupe sur whatsapp - Guide
- Créer un nouveau compte gmail - Guide
- Créer un nouveau compte google - Guide
- Nouveau climatiseur - Guide
1 réponse
Bonjour,
Ta méthode échange bien x et y. Mais ça n'a aucun effet sur a et b.
C'est normal, ça s'appelle le passage par valeur, c'est comme ça que travaille Java avec les types primitifs.
Remarque : pour les objets on parlera plutôt de passage par référence, ce qui permet d'altérer le contenu de l'objet (même si la référence est également passé par valeur donc on ne peut pas la changer non plus).
Ta méthode échange bien x et y. Mais ça n'a aucun effet sur a et b.
C'est normal, ça s'appelle le passage par valeur, c'est comme ça que travaille Java avec les types primitifs.
Remarque : pour les objets on parlera plutôt de passage par référence, ce qui permet d'altérer le contenu de l'objet (même si la référence est également passé par valeur donc on ne peut pas la changer non plus).
c'est quoi la solution alors dans ce cas..
merci
Si tu veux le faire il faudrait passer par des objets et altérer leurs contenus, par exemple avec AtomicInteger.