黑马程序员技术交流社区

标题: 集合框架的一些知识点 [打印本页]

作者: xiaoaonuanhu    时间: 2015-12-22 07:39
标题: 集合框架的一些知识点
用于操作数据的工具类。里面都是静态方法。


Arrays.toString(arr);数组变字符串。
Arrays.asList(arr);数组变成集合,可以使用集合的思想和方法来操作数组中的元素。

    注意,将数组变成集合,不可以使用集合的增删方法,因为数组的程度是固定的。
    如果增删了,会发生不支持操作异常。
    ******************
    如果数组中的元素都是对象,那么变成集合后,数组中的元素都直接转成集合中的元素。
    如果数组中的元素都是基本数据类型,那么会将该数组作为集合中的元素存在。


Collections接口中的toArray()方法:
    String [] arr = list.toArray(new String(list.size()));
    **将已经存在的list集合中的元素,转成数组(此处为字符串数组)。
    ******************
    1)指定类型的数组到底定义多长呢?
    当指定类型的数组长度小于集合的size,那么该方法内部会创建一个新的数组,长度为集合的size()。
    当指定类型的数组长度大于集合的size,就不会创建新数组了,而是使用传递进来的数组。
    所以要创建一个刚刚好的数组最优,长度为list.size().
    2)为什么要将集合变数组?
    为了限定对元素的操作,不需要进行增删了。只需要提供给访问者查看的操作即可。




作者: 石三伢子1    时间: 2015-12-22 10:09
当指定类型的数组长度小于集合的size,那么该方法内部会创建一个新的数组,长度为集合的size()。
当指定类型的数组长度大于集合的size,就不会创建新数组了,而是使用传递进来的数组。

是不是反了呢?
作者: 爱hao者    时间: 2015-12-22 23:12
还没学到,不是懂呀
作者: xiaoaonuanhu    时间: 2015-12-27 18:32
石三伢子1 发表于 2015-12-22 10:09
当指定类型的数组长度小于集合的size,那么该方法内部会创建一个新的数组,长度为集合的size()。
当指定 ...

我仔细看了看,没问题啊,毕老师的视频是这么介绍的。
作者: 石三伢子1    时间: 2015-12-28 09:55
是吗,那估计是我记错了,我在看看?
作者: 一大把手    时间: 2015-12-28 14:40
恩恩,写的很不错,都是知识点




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2