黑马程序员技术交流社区
标题:
从集合到数组,聪明的你有多少种方法
[打印本页]
作者:
touch_world
时间:
2014-11-8 02:28
标题:
从集合到数组,聪明的你有多少种方法
import java.util.*;
public class ShowA {
//定义一个随机产生数字的函数范围在0-99之间
public static int RamdonNum()
{
int num=(int)(Math.random()*100);
while(num==100)
{
num=(int)(Math.random()*100);
}
return num;
}
public static void main(String[] args) {
// 新建立一个容器类,给它添加10个整数
HashSet<Integer> hs = new HashSet<Integer>();
while(hs.size()!=10)
{
hs.add(RamdonNum());
}
//如果去遍历它
Iterator<Integer> it = hs.iterator();
while(it.hasNext())
{
System.out.println(it.next());
}
//这个时候由于没有角标,hashSet里面的元素就不能操作了?
while(it.hasNext())
{
System.out.println(it.next());
}
int[] arr=(int[])al.toArray();该怎么办???
}
}
复制代码
如题,我该怎么把,这些元素放到数组中,方便我操作
ps,hashSet设计成这样是为什么呀,不好操作呀,好像你去制作一个美女供大家欣赏,可是你却用凤姐做蓝本
作者:
touch_world
时间:
2014-11-8 02:37
1楼用迭代器已经到了尽头该如何操作这个呀,那存在容器里的元素不是没用了么,这又没有返回第一个元素的操作
本来collection 里面提供了toArray方法,可是 返回的却是Object,而且不能向下转型成数组,按理说数组的数据结构和HashSet的数据结构根本不一样,是不能互相转,提供的toArray是一个上帝对象,根本不能操作了,那么toArray方法是怎么使用的,hashSet是不是有特定的用途的呀
作者:
wf111sxwf
时间:
2014-11-8 11:28
collection的 toArray方法有一个是可以转换成指定类型的数组吧 toArray(T[] a)
返回包含此 collection 中所有元素的数组;返回数组的运行时类型与指定数组的运行时类型相同。
作者:
touch_world
时间:
2014-11-8 13:35
wf111sxwf 发表于 2014-11-8 11:28
collection的 toArray方法有一个是可以转换成指定类型的数组吧 toArray(T[] a)
返回包含此 coll ...
嗯 Integer[] a=hs.toArray(new Integer[10]);
for(int i=0;i<10;i++)
{
System.out.println(String.valueOf(a
));
}
是我弄错了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2