A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李鑫246 中级黑马   /  2016-9-21 00:10  /  2284 人查看  /  29 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

在集合中有addAll这个方法,但是我们在学集合的时候并没有讲这个方法。
求教这个方法怎么用?有哪些限制?

29 个回复

倒序浏览
看看API啊,里面用法都有
回复 使用道具 举报
是将整个集合中的所有元素添加到新集合......<? extends E>表示集合中的数据类型可以是E及其子类
回复 使用道具 举报
把一个集合的所有元素添加到另一个集合方法调用和add一样里面传一个集合注意写上泛型
你可以去试试定义两个集合

TreeSet<String> ts = new TreeSet<>();
                ts.add("1");
                ts.add("2");
                ts.add("3");
                TreeSet<String> ts1 = new TreeSet<>();
                ts1.addAll(ts);
                for(String str : ts){
                        System.out.println("第一个集合");
                        System.out.println(str);
                }
                for(String str1 : ts1){
                        System.out.println("第二个集合");
                        System.out.println(str1);
                }

点评

谢谢  发表于 2016-9-22 21:36
回复 使用道具 举报
addAll(Collection<? extends E> c)
          添加指定 collection 中的所有元素到此列表的结尾,顺序是指定 collection 的迭代器返回这些元素的顺序(可选操作)。

点评

那个顺序不太明白,能细说说么?  发表于 2016-9-22 21:35
回复 使用道具 举报
c1和c2都是collection,
c1.addAll(c2);                //将c2中的每一个元素添加到c1中
c1.add(c2);                        //将c2看成一个对象添加到c1中

点评

那c1c2是存的不同类型数据呢?  发表于 2016-9-22 21:34
回复 使用道具 举报
我心过往 来自手机 中级黑马 2016-9-22 10:58:19
7#
还是查api,搞懂api里的意思,你就很轻松的明白了

点评

好的 谢谢  发表于 2016-9-22 21:33
回复 使用道具 举报
Jarc 发表于 2016-9-21 15:14
看看API啊,里面用法都有

API好多看不懂,文字不好理解啊
回复 使用道具 举报
hysnxdss 发表于 2016-9-21 15:34
是将整个集合中的所有元素添加到新集合......

就是添加的的集合必须是添加到它的父类或者同类集合中?
回复 使用道具 举报
boolean addAll(int index, Collection<? extends E> c)
          从指定的位置开始,将指定 collection 中的所有元素插入到此列表中。

api上的原话,意思是,这个方法有两个参数,第一个是角标,第二个参数是集合.方法的作用是将集合中的所有元素插入到调用集合的角标位置

点评

那添加的集合岂不是没有什么限制?什么集合都可以添加  发表于 2016-9-22 21:42
回复 使用道具 举报
可以直接添加整个集合的元素
回复 使用道具 举报
愿望变美 发表于 2016-9-22 00:16
c1和c2都是collection,
c1.addAll(c2);                //将c2中的每一个元素添加到c1中
c1.add(c2);                        //将c2看成一个对 ...

collection在没加泛型的情况下存的是Object类,什么对象都存的进去,加了的话就不行
回复 使用道具 举报
这怎么会没教,上课没听课吧

点评

可能是老师删掉了这部分  发表于 2016-9-23 07:48
回复 使用道具 举报
学习学习!

点评

嗯嗯  发表于 2016-9-23 07:50
回复 使用道具 举报
愿望变美 发表于 2016-9-22 00:16
c1和c2都是collection,
c1.addAll(c2);                //将c2中的每一个元素添加到c1中
c1.add(c2);                        //将c2看成一个对 ...

collection,可以存不同的数据类型,不影响
回复 使用道具 举报
和add差不多,只不过里面参数是集合,是一次性把参数的那个集合整个集合的元素都传进去了
回复 使用道具 举报
读书可以当饭吃 发表于 2016-10-6 11:27
和add差不多,只不过里面参数是集合,是一次性把参数的那个集合整个集合的元素都传进去了 ...

非常感谢!
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
查API,写段代码试一下功能.
回复 使用道具 举报
同来学习,今天讲到了的,但是看各位大神的回复感受更深
回复 使用道具 举报
addAll(),是把一个集合添加到另一个集合中,看API,有详解
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马