Maison> Java> javaDidacticiel> le corps du texte

Analyse des exemples de questions de programmation Java

WBOY
Libérer: 2023-04-24 19:07:05
avant
950 Les gens l'ont consulté

Question 1 :

public static void demo01() {
Integer f1 = 100, f2 = 100, f3 = 200, f4 = 200;
System.out.println(f1 == f2);
System.out.println(f3 == f4);
}
Copier après la connexion

Question 2 :

private static Integer i;
public static void demo02() {
if (i == 0) {
System.out.println("A");
} else {
System.out.println("B");
}
}
Copier après la connexion

Réponse à la question 1 :

vrai

faux

Réponse à la question 2 :

NullPointerException

Analyse :

Question 1 :

Voici le code source de "autoboxing" dans la classe Integer :

public static Integer valueOf(int i) {
if (i >= IntegerCache.low && i <= IntegerCache.high)
return IntegerCache.cache[i + (-IntegerCache.low)];
return new Integer(i);
}
Copier après la connexion

La valeur d'IntegerCache.low est de -128 et la valeur d'IntegerCache.high est de 127. En d'autres termes, lorsque Integer est automatiquement mis en boîte, si la plage de la valeur entière est jugée comprise entre [-128,127], la valeur dans le pool de constantes entières sera utilisée directement si elle n'est pas dans cette plage, un nouvel Entier ; () sera créé. Par conséquent, f1 et f2 dans cette question sont tous deux compris entre [-128,127] et utilisent la même valeur dans le pool constant. Cependant, f3 et f4 ne sont pas dans la plage de [-128,127] et leurs valeurs sont toutes deux nouvelles, donc f3 et f4 ne sont pas le même objet.

Question 2 :

La valeur par défaut de Integer i est nulle. Lorsque i==0 est exécuté, le côté droit du signe égal est un nombre, donc pour effectuer des opérations de comparaison, Integer sera automatiquement déballé (c'est-à-dire qu'Integer sera converti en type int). Évidemment, si vous déballez null (convertissez null en nombre), une NullPointerException sera signalée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
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
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!