Prathik Rajendran M:
El siguiente bloque de código
class Main {
public static void main(String[] args) {
System.out.println( + 1);
}
}
Compila en Java 1.8.
Cuando se ejecuta este código 1
se imprime.
Lo mismo con System.out.println(+ + 1);
Sin embargo ++1
falla al compilar.
+ + "str"
falla al compilar.
+ + true
falla al compilar.
Así que parece que sólo se admite para int, largo y doble.
¿Cuál es la razón por la que esta expresión es válida para los tipos de datos anteriores?
TAlex:
Esto es más unario expresión. Es aquí sólo para la expresión menos unario cumplido.
Único tipo numérico suports porque para otros tipos que no tiene ningún sentido.
++1
no se compila porque ++
es expresión de incremento y requiere variable o un campo como expresión sub.