又一次遇到+=操作的隐藏转型问题。
来源:互联网 发布:服装设计软件手机版 编辑:程序博客网 时间:2024/05/18 08:25
隐藏转型的问题,对于简单的例子,大家都已经知道:
short i=1,j=1;
short k = i+j ;//编译错误,需要手工转型 。
但是 i++是可以的。这里就涉及隐藏转型的问题。
今天优化代码,原来的double用float,有一处没有修改,竟然能正确编译:
float sum = 0;
float[] location = point.getLocation();
if ( location == null || mDescriptor == null ) return Float.MAX_VALUE;
for ( int i = 0; i < mDescriptor.length; i++ ){
double diff = mDescriptor[i] - location[i];
sum += diff*diff;
}
return sum;
double的diff的积可以直接给float的sum进行+=操作。
询问了好久,终于查到了http://stackoverflow.com/questions/8710619/java-operator。
当然这段代码的diff最终是要修改为float的,只是在修改的中间过程发现这个现象。
0 0
- 又一次遇到+=操作的隐藏转型问题。
- 隐藏域遇到的问题
- 又一次遇到eclipse下控制台视图不好使的情况
- 操作powerpoint遇到的问题
- 操作数据库遇到的问题
- mysql操作遇到的问题
- 向上转型和向下转型的问题
- 又一次遭遇乱码问题
- CoordinatorLayout实现上滑隐藏ToolBar遇到的问题
- 又一次Maven不下载jar问题的解决
- 分页操作时候遇到的一个问题
- 文件操作中遇到的问题
- 操作ADS7961时遇到的一个问题
- 数据库连接及操作所遇到的问题
- js操作frameset遇到的问题
- QT 操作oracle数据库遇到的问题
- ios 操作sqlite3数据库遇到的问题
- 字符串操作经常遇到的马虎问题
- inux子系统的初始化_subsys_initcall():那些入口函数
- 启用Proguard后无法导出签名的APK包的解决办法
- VBS基础篇 - 循环语句(1) - Do 循环
- 自定义view-----滚动的刻度尺(二)
- 《Effective C++》学习笔记(四)
- 又一次遇到+=操作的隐藏转型问题。
- 小心垃圾邮件:已故影星罗宾威廉姆斯去世消息被黑客利用
- 极客Web前端开发资源大荟萃
- Google搜索的用法
- 报表 显示 23.5%
- php---whois查询
- Perception Neuron系统,让动作捕捉技术不再高冷
- struts1和struts2区别
- docker 实战---多台物理主机的联网,容器桥接到物理网络拓扑图(四)