Java passage par reference
Fermé
ulquiorra
Messages postés
31
Date d'inscription
jeudi 6 septembre 2007
Statut
Membre
Dernière intervention
29 juillet 2009
-
21 juil. 2009 à 14:44
Laule - 4 mai 2017 à 17:18
Laule - 4 mai 2017 à 17:18
A voir également:
- Passage par valeur et par référence java
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Reference pto - Accueil - Box & Connexion Internet
- Cette valeur ne correspond pas aux restrictions de validation des données pour cette cellule ✓ - Forum Excel
- Java apk - Télécharger - Langages
4 réponses
Marco la baraque
Messages postés
996
Date d'inscription
vendredi 9 mai 2008
Statut
Contributeur
Dernière intervention
5 novembre 2009
329
9 oct. 2009 à 21:32
9 oct. 2009 à 21:32
Bonsoir,
En java, tu ne peux pas choisir de passer tes paramètres par référence ou par valeur.
La règle est la suivante :
- ton paramètre est un objet, alors il est passé par référence
- ton paramètre est un type primitif, alors il est passé par valeur (par copie)
Donc si tu passe un short en paramètre, alors tu ne pourras pas modifier sa valeur initiale (tu vas changer la valeur de la copie, mais ça ne sera pas répercuté sur la variable initiale).
Si tu passes un Short, on peut imaginer modifier sa valeur interne, mais en fait non puisque Short est immutable (et final pour rien améliorer) :(
Donc une solution est de créer un pojo comme le suivant :
Voilà. C'est un peu dommage car au final c'est un peu comme si on utilisait un Short, mais bon ça répond à ton problème.
Cordialement,
En java, tu ne peux pas choisir de passer tes paramètres par référence ou par valeur.
La règle est la suivante :
- ton paramètre est un objet, alors il est passé par référence
- ton paramètre est un type primitif, alors il est passé par valeur (par copie)
Donc si tu passe un short en paramètre, alors tu ne pourras pas modifier sa valeur initiale (tu vas changer la valeur de la copie, mais ça ne sera pas répercuté sur la variable initiale).
Si tu passes un Short, on peut imaginer modifier sa valeur interne, mais en fait non puisque Short est immutable (et final pour rien améliorer) :(
Donc une solution est de créer un pojo comme le suivant :
public class ShortContainer { private short value; public short getValue() { return this.value; } public void setValue(short value) { this.value = value; } }
Voilà. C'est un peu dommage car au final c'est un peu comme si on utilisait un Short, mais bon ça répond à ton problème.
Cordialement,
4 mai 2017 à 17:18