常见异常备忘录
来源:互联网 发布:梦幻西游网络乾坤 编辑:程序博客网 时间:2024/05/18 18:55
异常:
1. new File(String path)
这个path不能为空,否则空指针
2. ListView数据更新导致的数组越界异常ArrayOutOfBound
ListView通常会对应一个数据集,一般用List保存。
ListView刷新时,首先调用Adapter的getCount(), getCount通常返回数据集中数据的个数。
假设getCount()返回n,
则接着调用 n 次 Adapter的getView()方法。
而getView通常会访问数据集指定位置的数据。
当数据集不变时,没有问题。
一旦数据集发生变化,确切的说,数据减少时,
例如减少1个,那么访问数据集List第n-1位置是,就发生数据越界。
发生异常的场景:
支持删除数据的ListView。
解决方案:
1. getView中访问数据前,检查是否数组越界。
或者2. 删除数据时,确保界面没有同时刷新。这个在界面设计上有点复杂。
3. 遍历集合同时修改集合导致的ConcurrentModificationException
错误的代码如下,以map为例。这里remove或者put都会导致该异常。
比较坑的是,三星手机会出现该异常,但是会被系统吃掉,代码直接终止,应用进程不会终止,界面不会有任何提示。
小米等不会报该异常,一切正常。
正确的代码如下:
非异常
1. dialog构造函数的cancellistener的监听器可以为null。
默认行为就是dismiss。
这个没有官方文件规定,
通过看源代码发现,并已实践验证。
风险:后续版本的android源码会不会crash,无法保证。
0 0
- 常见异常备忘录
- 常见算法知识备忘录1
- hadoop常见配置含义备忘录
- hadoop常见配置含义备忘录
- hadoop常见配置含义备忘录
- 【备忘录】常见面试题整理
- hadoop常见配置含义备忘录
- Java常见小功能备忘录
- 常见异常
- 常见异常
- 常见异常
- 常见异常
- 常见异常
- 常见异常
- 常见异常
- 常见异常
- 常见异常
- 常见异常
- java作用域的区别
- ShopNC本地生活o2o网站源码,无域名限制
- jquery autocomplete 怎样实现动态绑定
- ABAP 时间月份的F4帮助
- 彩票案例-导航栏属性控制-字体,颜色等
- 常见异常备忘录
- 日经社説 20150317 免震への信頼揺るがす問題だ
- c和c++的一些训练题(7)(编排日历)
- 做Gabor滤波器图片
- 淘宝运营四要素
- 服务治理
- SoftReference软引用
- 彩票案例-如何做代码适配
- Java加密技术(九)——初探SSL