在if语句中使用instanceof

问题描述 投票:0回答:1
if(objectName instanceof Mammal currentMammal){
    currentMammal.shedHair();

如果 (objectName instanceof Mammal) 为 true,则 currentMammal 将转换为 Mammal。 我看到这有效,但不知道如何。 我从来没有在“if”语句中见过这种事情

我相信这是有道理的。

if (ao instanceof Mammal) {
    Mammal currentMammal = (Mammal) ao;
    currentMammal.shedHair();
}

但是第一个片段超出了我的理解范围

java oop if-statement instanceof
1个回答
0
投票

得到答案了。 https://docs.oracle.com/en/java/javase/17/language/pattern-matching-instanceof-operator.html#GUID-843060B5-240C-4F47-A7B0-95C42E5B08A7.

这是 JDK 16 中添加的新功能。连 ChatGPT 都感到困惑;-)。

© www.soinside.com 2019 - 2024. All rights reserved.