博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
消除unchecked cast Warning
阅读量:4886 次
发布时间:2019-06-11

本文共 597 字,大约阅读时间需要 1 分钟。

在Java中,经常会将一个Object类型转成自己想要的Map、List等等。通常的做法是:

Object obj = ....;Map
castMap = (HashMap
) obj;

在这里会产生unchecked cast warning,有代码洁癖的就会想办法干掉它。解决办法就是在方法上添加一个注解@SuppressWarnings("unchecked") ,比较优雅的方案就是提供一个工具类,然后写个专门cast的方法来做这个工作。

@SuppressWarnings("unchecked")    public static 
T cast(Object obj) { return (T) obj; }

于是乎上面的就可以这么解决了:

Object obj = ....;Map
castMap = cast(obj); //import static method

更健壮一点的需要处理一下这里会抛出的ClassCastException,打个warn日志干个啥的都OK。

转载于:https://www.cnblogs.com/nexiyi/p/how_to_avoid_unchecked_cast.html

你可能感兴趣的文章
改变 C/C++ 控制台程序的输出颜色和样式
查看>>
ExtJs4.2 RadioGroup CheckboxGroup
查看>>
在Application中集成Microsoft Translator服务之使用http获取服务
查看>>
flask页面中Head标签内容为空问题
查看>>
小说Symbian的签名
查看>>
高级java面试宝典
查看>>
声明,本博客文章均为转载,只为学习,不为其他用途。感谢技术大牛的技术分享,让我少走弯路。...
查看>>
c# 导出Excel
查看>>
Status: Checked in and viewable by authorized users 出现在sharepoint 2013 home 页面
查看>>
python数据预处理
查看>>
Python之路,Day21 - 常用算法学习
查看>>
Android安全-代码安全1-ProGuard混淆处理
查看>>
部署core
查看>>
mysql 时间设置
查看>>
如何在 Xcode 中修改应用的名字
查看>>
有关交换机——熟悉原理是必须的【转载】
查看>>
ACM(数学问题)——UVa202:输入整数a和b(0≤a≤3000,1≤b≤3000),输出a/b的循环小数表示以及循环节长度。...
查看>>
【转】Android 读取doc文件
查看>>
js 数据绑定
查看>>
jsp的C标签一般使用方法以及js接收servlet中的对象及对象数字
查看>>