Maison >Java >javaDidacticiel >Une brève analyse du problème de la méthode de passage des paramètres entiers en Java

Une brève analyse du problème de la méthode de passage des paramètres entiers en Java

高洛峰
高洛峰original
2017-01-16 16:12:541614parcourir

Java lui-même est un appel de transmission de valeur et la valeur de l'adresse est transmise à l'objet. La réattribution de la valeur de l'adresse équivaut à un repointage et n'affectera pas la couche externe.
Et l'objet Integer ici a également des caractéristiques spéciales. En fait, l'implémentation peut être similaire à

class Integer{
final int value; //一旦赋值,就不能改变。
}

Cela apparaît : la valeur d'adresse transmise lors de l'appel ne peut pas changer l'objet externe lui-même et ne peut pas être modifiée. Par conséquent, cette valeur ne peut pas être modifiée


Il existe de nombreuses solutions
1 Le style Java consiste à utiliser la valeur de retour pour une seule valeur. return i ; assigner i=foo(); utiliser des tableaux ou des objets pour plusieurs valeurs.
2. Réussissez votre propre cours d'encapsulation. class MutableInteger{ int value;}
3. Passer l'objet entier atomique AtomicInteger dédié

    public static void main(String[] 参数) {     
  AtomicInteger i=new AtomicInteger(40);
  i.intValue();
  System.out.println(i);
 }
    public static void change(AtomicInteger i) {
     i.set(55);
}

peut également modifier la valeur après le passage
Solution recommandée 1, essayez d'éviter

<.>Pour plus d'articles liés à une brève analyse de la méthode de passage de paramètres Integer en Java, veuillez faire attention au site Web PHP chinois !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn