Files
javademos/java17-features/src/PatternInstanceofDemo.java

17 lines
785 B
Java

/** Pattern matching for instanceof (final in 16, JEP 394) and Stream.toList() (16). */
public class PatternInstanceofDemo {
static String describe(Object o) {
if (o instanceof String s && s.length() > 3) return "long string " + s;
if (o instanceof Integer i) return "int " + (i + 1);
return "other " + o;
}
public static void main(String[] args) {
System.out.println(describe("hello"));
System.out.println(describe("hi"));
System.out.println(describe(41));
var list = java.util.stream.Stream.of(3, 1, 2).sorted().toList();
System.out.println("Stream.toList : " + list);
try { list.add(4); } catch (UnsupportedOperationException e) { System.out.println("toList() result is unmodifiable"); }
}
}