Per quanto ho capito il Java 8 JLS l'espressione (1/0)
è considerata un'espressione costante, ma quando provo a compilare il seguente programma con OpenJDK 8 ottengo un erroreÈ `1/0` un'espressione costante in Java?
public class Switch {
public static void main(String[] args) {
switch(42) {
case (1/0):
return;
default:
return;
}
}
}
L'errore dice (1/0)
non è un'espressione costante
Switch.java:4: error: constant expression required
case (1/0):
^
1 error
Mi manca qualcosa? O è un bug in OpenJDK 8?
Per quale valore ti aspetti di entrare in quel caso ?! – Biffen
Non puoi davvero dividerlo a zero –
Funziona se fai qualcosa di sensato, come '(1/2)'? – Armand