Intro Instanceof Pattern Matching

Intro Instanceof Pattern Matching

這篇介紹Instanceof Pattern Matching。

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Instanceof pattern matching

Java17以前的寫法,需在迴圈內在轉型一次才能取得物件來使用

if (obj instanceof MyObject) {
MyObject myObject = (MyObject) obj;
// … further logic
}

現在可以在迴圈內取出物件來使用或直接拿方法判斷

if (obj instanceof MyObject myObject) {
// … the same logic
}

if (obj instanceof MyObject myObject && myObject.isValid()) {
// … the same logic
}