java 的List add 不同类型的对象
2016-12-29 10:58
239 查看
问题:
今天看java的list ,list后面的<> 里面可以填多种类型,但是如果不填写类型那就默认为 Object 类型。 所有我门 add 到 list 里的 数据都会被转换成 Object 类型。而当我门再从list 中取出该数据时,就会发现数据类型已经改变。
解答
Object类是所有Java类的祖先。每个类都使用 Object 作为超类。所有对象(包括数组)都实现这个类的方法。在不明确给出超类的情况下,Java会自动把Object作为要定义类的超类。
可以使用类型为Object的变量指向任意类型的对象。
在Java中由于继承和向上转型,子类可以非常自然地转换成父类,但是父类转换成子类则需要强制转换。因为子类拥有比父类更多的属性、更强的功能,所以父类转换为子类需要强制。那么,是不是只要是父类转换为子类就会成功呢?其实不然,他们之间的强制类型转换是有条件的。
由于以上的原因 我门存入 list 的不同类型的对象都可以 自然的转换成Object 类型,但是取出的时候都需要强制转换。
示例
相关文章推荐
- Java XML解析,,Node直接转为对象。考虑了一般的类,简单类型,数组,还未考虑List,Map
- JAVA利用泛型返回类型不同的对象
- java比较两段json不同工具类(两个同一类型的java对象比较也推荐转成JSON再进行比较)
- java面试要点---ArrayList list = new ArrayList(); 在这个泛型为Integer的ArrayList中存放一个String类型的对象。
- JAVA利用泛型返回类型不同的对象
- JAVA中如何取出两个不同List对象(对象一致)中所有不同的对象的集合
- java实现两个不同list对象合并后并排序
- 关于java列表数据类型(ArrayList, LinkedList)的add与get
- JAVA之旅(十八)——基本数据类型的对象包装类,集合框架,数据结构,Collection,ArrayList,迭代器Iterator,List的使用
- Java List、Set去重实体对象类型的集合
- java两个list中保存bean对象,找出其中某一属性不同的元素
- java List Collections.sort 排序 支持 对象属性 普通数据类型
- Java 比较两个List的差异,并取出不同的对象
- java两个list中保存bean对象,找出其中某一属性不同的元素
- Java为什么两个值相等的对象==比较返回false而两个值相等的不同类型的的基本数据类型返回true
- Java相同类型的两个对象比较属性值,得到不同属性的名称和对应的值,附代码实例
- JAVA 利用泛型返回类型不同的对象
- List中存放不同类型对象之间的转换
- 把java中的list对象转换成net.sf.JSONArray类型对象
- [java.io]关于List对象的引用是自定义类型写入文件