java编程关于set
发布网友
发布时间:2022-04-26 02:55
我来回答
共5个回答
热心网友
时间:2022-06-20 06:47
你把你的这句话s.add(new
Integer((int)Math.random()*36+1));改写成我这样写的
s.add(new
Integer((int)
(Math.random()*36+1)));就可以达到你的预期目的
热心网友
时间:2022-06-20 06:48
set
是一个接口
他是通过迭代器来进行
循环的
而且不能有重复值~!!
while(s.size()!=7)
{
s.add(new
Integer((int)Math.random()*36+1));
}
为什么是死循环
应为
随机数一直
!=7
所以一直执行
热心网友
时间:2022-06-20 06:48
哦搞错了
你把他换成
s.add(
String.ValueOf(new
double(Math.random()*36)));
应为
set只能添加
String类型
热心网友
时间:2022-06-20 06:49
Mr.wen~~~不懂java就不要这里乱放P,自己的java都没有学好就在教别人,还是自己回家好好看看java吧
热心网友
时间:2022-06-20 06:49
System.out.println((int)Math.random());
输出
0;
(int)Math.random()*36+1)
分析:0*36+1=1;
你这就不叫随机了.每次输出的都是1
因为treeSet
里边存放的都是不重复的元素
所以就一直在那里无聊的循环
1
;
改成:
Set
s
=
new
TreeSet();
while(s.size()!=7)
{
s.add(new
Integer((int)(Math.random()*36+1)));
}
就ok
了