展开全部
元素的数据类型
首先你要知道数组和集合的区别,
ArrayList是集合,Student[]是数组,
数组的特点是只能放固定类型的数据,如int[]就只能放int型成员,也正因为如此,使数组放进去什么类型的数据,取出来就是什么类型,缺点是数组容量,即长度在初始化时就固定了。
集合的特点和数组正好相反,任意类型的数据都可以放进去,其原理是他把任何对象都转换成了根类的引用object,而缺点也随之而来:拿出来的时候需要做类型转换。另外集合的成员个数从理论上说没有限制,且不用管理,他会根据元素的个数自动增长。
ArrayList<Student>属于泛型集合,这是一种改进了普通集合缺陷的类型,首先,他具有集合的优点:容量不受限制,其次,他具有数组的好处:放进去什么类型,拿出来直接用就可以了,不用类型转换,这是为什么呢?
原因就在于这个<>尖括号内的数据类型,这个括号内指定了这个集合的元素类型,使集合对象明确声明了元素的类型,这样就可以拿出来直接用了。
所以这里的<Student>指的是集合中元素的数据类型,相应的,只要你能肯定集合只放某一种类型的元素,你都可以使用泛型集合,如:
ArrayList<String>
ArrayList<Employee>
ArrayList<int[]>
List<Book>
List<Student>
等
需要注意的是:一旦使用泛型集合,那么普通集合原有的可以放置任何数据类型的对象的特性就没有了,因为你指定了元素的数据类型,所以也只能放这种类型的元素,否则会报错!
首先你要知道数组和集合的区别,
ArrayList是集合,Student[]是数组,
数组的特点是只能放固定类型的数据,如int[]就只能放int型成员,也正因为如此,使数组放进去什么类型的数据,取出来就是什么类型,缺点是数组容量,即长度在初始化时就固定了。
集合的特点和数组正好相反,任意类型的数据都可以放进去,其原理是他把任何对象都转换成了根类的引用object,而缺点也随之而来:拿出来的时候需要做类型转换。另外集合的成员个数从理论上说没有限制,且不用管理,他会根据元素的个数自动增长。
ArrayList<Student>属于泛型集合,这是一种改进了普通集合缺陷的类型,首先,他具有集合的优点:容量不受限制,其次,他具有数组的好处:放进去什么类型,拿出来直接用就可以了,不用类型转换,这是为什么呢?
原因就在于这个<>尖括号内的数据类型,这个括号内指定了这个集合的元素类型,使集合对象明确声明了元素的类型,这样就可以拿出来直接用了。
所以这里的<Student>指的是集合中元素的数据类型,相应的,只要你能肯定集合只放某一种类型的元素,你都可以使用泛型集合,如:
ArrayList<String>
ArrayList<Employee>
ArrayList<int[]>
List<Book>
List<Student>
等
需要注意的是:一旦使用泛型集合,那么普通集合原有的可以放置任何数据类型的对象的特性就没有了,因为你指定了元素的数据类型,所以也只能放这种类型的元素,否则会报错!
亚果会
2024-04-11 广告
2024-04-11 广告
Goma Greens是一家专注于提供高品质有机蔬果的企业。我们致力于为消费者带来新鲜、健康、无污染的食材,以满足现代人对健康生活的追求。我们的产品均来自精心挑选的有机农场,通过严格的品质控制,确保每一份食材都达到最高标准。此外,我们还提供...
点击进入详情页
本回答由亚果会提供
展开全部
1.5版本以后的新特性吧.
我想是这个意思哦,以前的ArrayList任何对象放进去,都会自动转型为Object,丢失了对象信息,现在支持你定义一个全是Student类型的ArrayList了,无须取出来后再转型了吧.
我想是这个意思哦,以前的ArrayList任何对象放进去,都会自动转型为Object,丢失了对象信息,现在支持你定义一个全是Student类型的ArrayList了,无须取出来后再转型了吧.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
限制arraylist中元素的数据类型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询