2017-09-22 1 views
4
public class Main { 

    public static void main(String[] args) { 
    int j = + -1234; 
    System.out.printf("%d", j); 
    System.out.println(); 
    System.out.println(j); 
    } 
} 

Le résultat est -1234. Quelqu'un peut-il m'expliquer pourquoi le résultat est -1234?Java Types de données

+0

Hm, tout est correct. Qu'attendez-vous? –

+1

c'est la même chose que '0 + (-1234)' –

+0

Bcz la valeur de - est supérieure à + donc assigner - signe et c'est pourquoi votre réponse est -1234 –

Répondre

0

En fait, le compilateur Java prend + - comme + - il en résulte donc -1234. si vous essayez - + - 1234 alors il sera traité comme - + * - 1234 qui est 1234.

public class Main { 

     public static void main(String[] args) { 
     int j = -+ -1234; 
     System.out.printf("%d", j); 
     System.out.println(); 
     System.out.println(j); 

}}

Cette imprimera 1234. vous ne pouvez pas utiliser ++/- depuis il est déjà prédéfini en java pour le fonctionnement d'incrémentation et de décrémentation

0

Vous définissez j à + -1234 Cet effet est d'ajouter 0 à la valeur de -1234, qui est le même que la soustraction 1234 de 0. il est donc logique que lorsque vous imprimez la valeur ce serait -1234. Vous pouvez tester cela sur Wolframalpha: http://www.wolframalpha.com/input/?i=%2B+-1234