用Math.random取随机数和用Random类中的方法有什么不同?
解决方案 »
- 哪位帮我看看这段代码有错误么,谢谢大家啦
- 谁能帮我解决一个简单的问题??
- 高分通缉:jdbc为什么不提供getrows的方法!
- scjp求助,这道题应该选什么,以及原因,谢谢
- Java读取内存,文件,数据库中的数据的速度排序。
- 如何将long型转换成String型?在线等!
- jbuilder7里如何在project pane里显示出某个project的所有的类的结构图,就如显示source java files的结构图一样
- 使用jdbc访问sqlserver的问题
- 如何自动刷新网页?在线等待!
- 关于java聊天工具,图形化界面+多线程实现中的问题
- JAVA 获取PDF 文件页面大小
- 请问用object初始化JTree后,如何实现删除功能?
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Random;
import java.util.Set;/**
* Random 类
* http://www.juheit.com
*/
public class StudyRandom{ public static void main(String[] args){
//创建随机的实例
Random r = new Random();
//产生随机整数
int ranInt = r.nextInt();
System.out.println("ranInt:" + ranInt);
//产生相同的随机序列
r = new Random(IRandomConstant.SEED);
for(int i = 0; i < 5; i ++){
System.out.println(r.nextInt());
}
//每次产生不同的随机序列
r = new Random(System.currentTimeMillis());
for(int i = 0; i < 5; i ++){
System.out.println(r.nextInt());
}
//产生指定范围内的随机数
r = new Random();
for(int i = 0; i < 5; i ++){
// System.out.println(r.nextInt(50));//50以内
System.out.println(r.nextInt(51) + 50);//50~100之间的随机数
}
getRandomMaxMinNum();
}
/**
* 取出50~100之间的随机数,取出其中的最大数、第二大数和最小数、第二小数
*/
public static void getRandomMaxMinNum(){
Random r = new Random();
//创建无序集合
Set<Integer> randomSet = new HashSet<Integer>();
for(int i = 0; i < 10; i ++){
randomSet.add(new Integer(r.nextInt(51) + 50));
}
System.out.println("randomSet:" + randomSet);
//创建有序集合
List<Integer> randomList = new ArrayList<Integer>();
randomList.addAll(randomSet);
//排序
Collections.sort(randomList);
if(randomList.size() >= 2){
System.out.println("MaxInt:" + randomList.get(randomList.size() - 1));
System.out.println("MaxSecInt:" + randomList.get(randomList.size() - 2));
System.out.println("MinSecInt:" + randomList.get(1));
System.out.println("MinInt:" + randomList.get(0));
}
}
}interface IRandomConstant{
/**
* 随机种子
*/
public static final Long SEED = 1000000L;
}