Anu*_*jan 19 c# java keyword as-keyword
我们知道C#提供了一个AS关键字,它自动检查Object是否属于某个类型,如果是,则将其转换为所需类型,否则返回null.
public class User
{
}
....
Object obj = someObj;
User user = obj As User;
...
在上面的示例中,An Object obj可以是User类型或其他类型.用户将获得User类型的对象或null.这是因为C#的As关键字首先执行检查,如果可能,然后执行将对象转换为结果类型.
那么Java中的任何关键字是否等同于C#的AS关键字?
Pet*_*rey 25
您可以创建一个帮助方法
public static T as(Object o, Class<T> tClass) {
return tClass.isInstance(o) ? (T) o : null;
}
User user = as(obj, User.class);
Run Code Online (Sandbox Code Playgroud)
jbe*_*erg 20
不,您可以查看,instanceof然后如果匹配则投射
User user = null;
if(obj instanceof User) {
user = (User) obj;
}
Run Code Online (Sandbox Code Playgroud)
tru*_*ity 11
没有关键字,但为了完整性,我会给你1个等效的:
User user = obj instanceof User ? (User) obj : null;
Run Code Online (Sandbox Code Playgroud)
(你可能不必有明确的演员表,我不确定.)
| 归档时间: |
|
| 查看次数: |
11780 次 |
| 最近记录: |