17 lines
785 B
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"); }
|
|
}
|
|
}
|