黑马程序员技术交流社区
标题:
关于集合和数组的增删的一个疑问?
[打印本页]
作者:
漫步人
时间:
2013-10-26 19:01
标题:
关于集合和数组的增删的一个疑问?
用集合框架工具类中的Collections.toArray()将集合变成数组后对其进行了限制(不能进行增删)
但是通过List<Integer> list=Arrays.asList(arr);将数组变成了集合,就应该有集合的特性,为什么呢?
作者:
李泰然
时间:
2013-10-26 20:48
1,将集合变成数组:为了限定对元素的操作。
当指定类型的数组长度小于集合的size()时,那么该方法内部就会创建一个新的数组,长度为集合的size()。当指定类型的数组长度大于集合的size()时,就不会创建新的数组,所以创建一个刚刚好的数组是最优的。
2,将数组变成集合:可以使用集合的思想来操作数组中的元素。
注意:将数组变成集合后,不可以使用集合的增删操作,因为数组的长度是固定的。可以使用的方法有:contains()、get()、index()、subList()等,如果进行增删操作,会发生UnsupportedOperationException()异常。
不知道这样可以帮助到你不……
作者:
张鹏
时间:
2013-10-26 20:54
哥们。这个问题只要看下源码就完全明白了!
作者:
cuilitang
时间:
2013-10-27 20:50
兄弟,你真有意思...
我在Collections类里面找了一阵子,你说的方法在Collection接口中...
另外,数组长度是固定的,你本来就不能对数组元素进行增删啊...
顶多是重新初始化一下值...
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2