Code de test:
int[] test = {0, 1, 2, 3};
System.out.println("test1[3] ++== 0 is " + (test[3] ++== 0));
Résultat:
test1 [3] ++ == 0 est faux
Donc ça doit être une sorte d'opérateur logique mais je n'ai pas pu trouver de documentation. La recherche sur Internet n'a donné aucune référence.
Veuillez aider? Merci d'avance.
5 Réponses :
++ et == sont deux opérateurs indépendants. ++ post-incrémente la valeur de test [3] , puis celle-ci est comparée à 0.
La manière dont le texte est présenté ressemble à un cas particulier ++ == , mais en fait, vous devriez le lire comme suit:
test [3] ++ == 0
Fondamentalement, le résultat du test [3] ++ sera comparé (c'est-à-dire == ) avec 0 .
Et cela se lit essentiellement comme (test [3] = 3) == 0 , ce qui est faux.
Le ++ est un opérateur de suffixe qui est un raccourci pour value = value + 1 .
Le == est une comparaison entre deux valeurs.
Le texte est simplement mal formaté, c'est tout.
x ++ == y équivaut à x ++ == y
public class Test {
public static void main(String args[]) {
int[] test = {0, 1, 2, 3};
System.out.println("test1[3] ++== 0 is " + (test[3] ++== 3));
}
}
test1 [3] ++ == 0 équivaudra à false.
test1 [3] ++ == 3 équivaudra à true code >.
Il s'agit de deux opérateurs - incrémenter de un ( x ++ ) et tester l'égalité (x == 0) . Vous devriez le lire comme (x ++) == 0 .
La chose la plus délicate est que l'incrément se produit après la comparaison, donc ce qui précède signifie "tester si X est égal à zéro, puis incrémenter X de un."
Puisque ++ est un post-incrément, vos actions peuvent être séparées comme suit:
false test [3] = test [3] + 1; Donc après cela dans le test [3] sera la valeur 4
(test [3] ++) == 0?