Collection接口中的toArray()用法-一道JAVA编程
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Collection接口中的toArray()用法-一道JAVA编程相关的知识,希望对你有一定的参考价值。
Collection<String> c=new ArrayList<String>();
Collection<String> c2=new ArrayList<String>();
c.add("I");
c.add("Love");
c.add("you");
c.add(",");
c2.addAll(c);
c2.add("中国");
c2.add("!");
String str[]=new String[c2.size()];
str=c2.toArray();
myeclipse在语句str=c2.toArray();中这样提示:
Type mismatch: cannot convert from String to String[]
我想把c2中的所有元素都复制到str数组中
请问是什么原因 该怎样解决才好
public static void main(String args[])
Collection<String> c=new ArrayList<String>();
Collection<String> c2=new ArrayList<String>();
c.add("I");
c.add("Love");
c.add("you");
c.add(",");
System.out.println(c);
c2.addAll(c);
c2.add("中国");
c.add("!");
System.out.println(c2);
Object[] e = new String[c2.size()];
e = c2.toArray();
for(int i=0;i<e.length;i++)
System.out.println(e[i]);
toArray()方法返回的是一个Object数组,你想把String放到object数组的话应该得向上转型。Object[] e = new String[c2.size()];这样。 参考技术A Object str[] = c2.toArray();
这样写就可以了,为什么String不能,正在研究..
java中collection接口 中的方法 add(E o) ,addAll(Collection<? extends E> c) ,void clear() 用法
java中collection接口 中的方法 add(E o) ,addAll(Collection<? extends E> c) ,void clear() 这三个的具体用法
每个举一个例子 讲得明白有额外分
这里不欢迎CV高手 复制粘贴我也会 我要的是例子 谢谢
确保此 collection 包含指定的元素(可选操作)。如果此 collection 随调用的结果而发生改变,则返回 true。(如果此 collection 不允许有重复元素,并且已经包含了指定的元素,则返回 false。)
支持此操作的 collection 可以限制哪些元素能添加到此 collection 中来。需要特别指出的是,一些 collection 拒绝添加 null 元素,其他一些 collection 将对可以添加的元素类型强加限制。Collection 类应该在其文档中清楚地指定能添加哪些元素方面的所有限制。
如果 collection 由于某些原因(已经包含该元素的原因除外)拒绝添加特定的元素,那么它必须 抛出一个异常(而不是返回 false)。这确保了在此调用返回后,collection 总是包含指定的元素。
参数:
o - 确定此 collection 中是否存在的元素。
返回:
如果此 collection 随调用的结果而发生改变,则返回 true
addAll(Collection<? extends E> c) 将指定 collection 中的所有元素都添加到此 collection 中(可选操作)。
将指定 collection 中的所有元素都添加到此 collection 中(可选操作)。如果在进行此操作的同时修改指定的 collection,那么此操作行为是不明确的。(这意味着如果指定的 collection 是此 collection,并且此 collection 为非空,那么此调用的行为是不明确的。)
参数:
c - 要插入到此 collection 的元素。
返回:
如果此 collection 随调用的结果而发生改变,则返回 true
clear() 移除此 collection 中的所有元素(可选操作)。
移除此 collection 中的所有元素(可选操作)。此方法返回后,除非抛出一个异常,否则 collection 将为空。 参考技术A add(E o)就是从你的collection实例拉一条线把它跟对象o连起来,表示这个collection实例包含这个对象o,但是这个方法是有限制的,就是,它不会跟这个对象拉第二条线,也就是说,如果你给的对象跟这个collection实例有了一条线,它就不鸟你了。
Collection<String> c1=new HashSet<String>();
c1.add( 参考技术B add(Object o)
Appends the specified element to the end of this list.
add(int index, Object element)
Inserts the specified element at the specified position in this list.
addAll(Collection c)
Appends all of the elements in the specified Collection to the end of this list, in the order that they are returned by the specified Collection's Iterator. 参考技术C 拜托,查看JDK文档中相关部分就好啦·~
以上是关于Collection接口中的toArray()用法-一道JAVA编程的主要内容,如果未能解决你的问题,请参考以下文章
Collection的toArray()使用上需要注意的地方
java中collection接口 中的方法 add(E o) ,addAll(Collection<? extends E> c) ,void clear() 用法