Considera il seguente codice java.Perché il valore negativo di Integer.MIN_VALUE ha lo stesso valore?
Integer value = Integer.MIN_VALUE;
System.out.println(value);
value = -value;
System.out.println(value);
uscita
-2147483648
-2147483648
Come il valore negativo dei Integer.MIN_VALUE
valore risulta lo stesso valore?
Tuttavia, il risultato non può essere 2147483648
poiché il valore massimo di Numero intero in java è 2147483647
.
Ma vuoi sapere perché -2147483648
? Che tipo di operazioni bit-bit stanno accadendo internamente?
Per gli elettori di riapertura, [questa] (http://stackoverflow.com/a/17256127/438154) risposta nel duplicato spiega la negazione di "Integer.MIN_VALUE".I duplicati non riguardano le domande come le stesse, si tratta di _Questa domanda ha già una risposta qui_, come afferma l'etichetta. –