| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1254 人关注过本帖
标题:生成6个54以内的随机数,还能改进吗
只看楼主 加入收藏
majkandy
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-9-2
收藏
 问题点数:0 回复次数:10 
生成6个54以内的随机数,还能改进吗
生成6个54以内的随机数
import java.util.Random;
class DifferentRandomNum
{
public static void main(String[] args)
{
int[] records = new int[55];
int[] num = new int[6];
int tmp=0;
for(int i = 0;i<6;i++)
{
for(;;)
{
tmp = (int)(Math.random()*55);
if(records[tmp]==0)
{
num[i]=tmp;
records[tmp]++;
}
if(num[i]!=0)break;
}
}
for(int j = 0;j<6;j++)
System.out.println (num[j]);
}
}
搜索更多相关主题的帖子: 随机数 改进 java util import 
2006-09-02 23:30
NiceGirl
Rank: 2
等 级:新手上路
威 望:4
帖 子:909
专家分:0
注 册:2006-6-18
收藏
得分:0 

import java.util.*;

public class Test {
public int rNumber() {
Random myRan = new Random();
return myRan.nextInt(55);
}

public static void main(String[] args) {
int[] array = new int[6];
for(int i=0;i<6;i++){
array[i] = new Test().rNumber();
System.out.print(" "+array[i]);
}
}
}


曾经以为百般艰难,蓦然回首,才发现已飞渡千山。。!
2006-09-03 00:06
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 
楼上的不够专业
这样写不更加合理么?

public static int[] getIntRandomArray(int n){
int[] array = new int[n];
Random random = new Random();
for(int i=0;i<array.length;array[i++]=random.nextInt());
return array;
}

[此贴子已经被作者于2006-9-3 10:02:26编辑过]


淘宝杜琨
2006-09-03 09:43
NiceGirl
Rank: 2
等 级:新手上路
威 望:4
帖 子:909
专家分:0
注 册:2006-6-18
收藏
得分:0 
以下是引用神vLinux飘飘在2006-9-3 9:43:33的发言:
楼上的不够专业
这样写不更加合理么?

public static int[] getIntRandomArray(int n){
int[] array = new int[n];
Random random = new Random();
for(int i=0;i<array.length;array[i++]=random.nextInt());
return array;
}

确实~~~!


曾经以为百般艰难,蓦然回首,才发现已飞渡千山。。!
2006-09-03 12:49
majkandy
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-9-2
收藏
得分:0 
能解释一下吗,看不懂啊
能解释一下吗,看不懂啊
2006-09-04 22:30
majkandy
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-9-2
收藏
得分:0 
忘记说了,是54以内的6个不同的数字
忘记说了,是54以内的6个不同的数字
2006-09-04 22:33
NiceGirl
Rank: 2
等 级:新手上路
威 望:4
帖 子:909
专家分:0
注 册:2006-6-18
收藏
得分:0 

以上运行出来的是6个不同的数字啊~!


曾经以为百般艰难,蓦然回首,才发现已飞渡千山。。!
2006-09-04 22:38
Pavarotti17
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2006-4-21
收藏
得分:0 
以下是引用神vLinux飘飘在2006-9-3 9:43:33的发言:
楼上的不够专业
这样写不更加合理么?

public static int[] getIntRandomArray(int n){
int[] array = new int[n];
Random random = new Random();
for(int i=0;i<array.length;array[i++]=random.nextInt());
return array;
}

弱问一下:加static的目的是不是为了避免函数调用完之后new 的int[n]不会被释放掉啊?
那么static里面的数据应该怎样释放呢?比如这个int[n],在调用完getIntRandomArray函数之后最后这n个int应该怎样释放掉呢?

[此贴子已经被作者于2006-9-5 1:16:30编辑过]

2006-09-05 01:15
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 
弱问一下:加static的目的是不是为了避免函数调用完之后new 的int[n]不会被释放掉啊?
---------------------------------------------------------------------------------------------------------------
是么?我不知道.....
我只知道这个方法不需要访问对象状态,对于我来说,能用静态就用...特别是在这种工具类上

根据垃圾处理机制,new 的int[n]会在不用的时候被垃圾回收器回收

淘宝杜琨
2006-09-05 16:09
LSYHEFENG
Rank: 2
等 级:论坛游民
帖 子:112
专家分:71
注 册:2010-7-17
收藏
得分:0 
学习了
2010-11-17 16:16
快速回复:生成6个54以内的随机数,还能改进吗
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022903 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved