java 数组之间的强转报错
来源:互联网 发布:岂其取之易而守之难乎 编辑:程序博客网 时间:2024/05/22 15:54
- Object[] obj = {"t1","t2"};
- String[] str1 = (String[])obj;
- System.out.println(str1.length);
这段代码是报错的,以下分析原因:
1. 数组也是有类型的,取决于初始化时候的类型, 是Object[]类型。
2. 可以强转的前提: 父类指向的是子类的实际对象。
鉴于上面的两种情况,obj指向的是实际的object []对象,所以不能转化为String[]对象。
下面的代码就可以:
Object[] obj = new String[]{"测试","测试2"};
String[] str = (String[])obj;
这段代码就是能够编译成功的,是可以通过的,分析如下:
1. 上面obj在初始化的时候,赋予了类型,就是String[]类型。
2. obj指向的类型是String[]类型,上面强转的第一条符合。
0 0
- java 数组之间的强转报错
- java 数组之间的转换
- Java中数组之间的比较
- Java List与数组之间的转换
- java json与数组之间的转换
- Java List与数组之间的转换
- Java List与数组之间的转换
- Java:函数,类,数组之间的运用
- java关于数组之间的相互赋值
- JAVA 多个数组之间的排列组合
- java关于数组之间的相互赋值
- java数组与容器之间的转换,实现数组扩容
- java数组与容器之间的转换,实现数组扩容
- JAVA的list,set,数组之间的转换
- java 字符串和数组的之间的转换
- JAVA的list,set,数组之间的转换 (转)
- JAVA的list,set,数组之间的转换
- 数组之间的距离
- 单元测试
- 带癞子麻将查表判断胡牌高效率低内存算法
- Java的4种引用,强弱软虚
- 阿里巴巴 连接池 druid 的使用、maven依赖
- Qt显示对话框的基本逻辑
- java 数组之间的强转报错
- Unity 3D追踪效果的实现 目标箭头指引
- Glide之旅 —— DecodeJob
- 实现一个3D图片轮播插件 —— 更新版
- IOS中javascript会遇到的坑
- 递归于非递归的二分搜索法
- CSS3基础——背景
- docker save/load, export/import
- Android应用外网ip和地理位置解析