rava2
home
documentation
examples
public class Main { public static void main(String[] args) { Object[] items = { "Hello", 42, 3.14, new Dog("Buddy"), new Cat("Whiskers"), true }; System.out.println("Pattern matching with instanceof:"); for (Object item : items) { describeItem(item); } } static void describeItem(Object obj) { if (obj instanceof String s) { System.out.println("String of length " + s.length() + ": \"" + s + "\""); } else if (obj instanceof Integer i) { System.out.println("Integer: " + i + " (doubled: " + (i * 2) + ")"); } else if (obj instanceof Double d) { System.out.println("Double: " + d); } else if (obj instanceof Dog dog) { System.out.println("Dog: " + dog.bark()); } else if (obj instanceof Cat cat) { System.out.println("Cat: " + cat.meow()); } else if (obj instanceof Boolean b) { System.out.println("Boolean: " + b); } else { System.out.println("Unknown type"); } } } class Animal { } class Dog extends Animal { private String name; Dog(String name) { this.name = name; } String bark() { return name + " says Woof!"; } } class Cat extends Animal { private String name; Cat(String name) { this.name = name; } String meow() { return name + " says Meow!"; } }
run program
ready