public class DoubleSwitchTest {
public static void main(String[] args) {
Object object = -1.0;
// Prints true
System.out.println(object instanceof Double);
// Prints true
switch(object) {
case Double d -> System.out.println("true");
case null -> System.out.println("null");
default -> System.out.println("false");
}
// Prints false, expected true
switch(object) {
case null -> System.out.println("null");
case Double d -> System.out.println("true");
default -> System.out.println("false");
}
object = Math.nextUp(-1.0);
// Prints true
switch(object) {
case null -> System.out.println("null");
case Double d -> System.out.println("true");
default -> System.out.println("false");
}
object = Math.nextDown(-1.0);
// Prints false, expected true
switch(object) {
case null -> System.out.println("null");
case Double d -> System.out.println("true");
default -> System.out.println("false");
}
}
}