如何在Java中模拟C#操作员

VoidPointer:

在某些情况下,使用类型转换返回null值而不是抛出ClassCastException是可行的。C#让as操作员执行此操作。Java中是否有可用的等效项,因此您不必显式检查ClassCastException?

亚伦·曼帕(Aaron Maenpaa):

这是@Omar Kooheji建议的as的实现:

public static <T> T as(Class<T> clazz, Object o){
    if(clazz.isInstance(o)){
        return clazz.cast(o);
    }
    return null;
}

as(A.class, new Object()) --> null
as(B.class, new B())  --> B

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章