`
lushuaiyin
  • 浏览: 704909 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

使用java.lang.Math 生成随机数字

 
阅读更多

这里我想说生成随机数字,并且使用java.lang.Math 这个类。内容很少,直接上代码吧。

RamdomUtil

package org.xml.util;

public class RamdomUtil {

	/**
	 * 使用Math.random()生成随机小数0-1之间
	 * @return  0.2828253436134537
	 */
	public static String createRandomDoubleWithDotByMath(){
		String res="";
		Double d=Math.random();
		res=String.valueOf(d);
		return res;
	}
	
	/**
	 * 使用Math.random()生成随机小数0-1之间,再乘以参数multiplier
	 * @return  23.00129411460935
	 */
	public static String createRandomDoubleWithDotByMath(int multiplier){
		String res="";
		if(multiplier<=0){
			multiplier=1;
		}
		Double d=Math.random()*multiplier;
		res=String.valueOf(d);
		return res;
	}
	
	/**
	 * 使用Math.random()生成随机小数0-1之间,只要小数点后面的数字
	 * @return  2314994860279005
	 */
	public static String createRandomDoubleWithoutDotByMath(){
		String res="";
		Double d=Math.random();
		res=String.valueOf(d);
		res=res.substring(res.indexOf(".")+1);
		return res;
	}
	
	/**
	 * 使用Math.random()生成随机小数0-1之间,再乘以参数multiplier,只要小数点后面的数字
	 * @return  911269130333089
	 */
	public static String createRandomDoubleWithoutDotByMath(int multiplier){
		String res="";
		if(multiplier<=0){
			multiplier=1;
		}
		Double d=Math.random()*multiplier;
		res=String.valueOf(d);
		res=res.substring(res.indexOf(".")+1);
		return res;
	}
	
	/**
	 * 系统当前时间的毫秒数
	 * @return  1361773407554
	 */
	public static String createRandomNumberBySystemTime(){
		String res="";
		Long ltime=System.currentTimeMillis();
		res=String.valueOf(ltime);
		return res;
	}
	
	/**
	 * 系统当前时间的毫秒数,再乘以multiplier
	 * @return  136177358759900
	 */
	public static String createRandomNumberBySystemTime(int multiplier){
		String res="";
		if(multiplier<=0){
			multiplier=1;
		}
		Long ltime=System.currentTimeMillis()*multiplier;
		res=String.valueOf(ltime);
		return res;
	}
	
	
	public static void main(String[] ss){
		String r1=RamdomUtil.createRandomDoubleWithDotByMath();
		System.out.println(r1);
		
		String r2=RamdomUtil.createRandomDoubleWithDotByMath(100);
		System.out.println(r2);
		
		String r3=RamdomUtil.createRandomDoubleWithoutDotByMath();
		System.out.println(r3);
		
		String r4=RamdomUtil.createRandomDoubleWithoutDotByMath(100);
		System.out.println(r4);
		
		System.out.println("------------------------------");
		
		String r5=RamdomUtil.createRandomNumberBySystemTime();
		System.out.println(r5);
		
		
		String r6=RamdomUtil.createRandomNumberBySystemTime(100);
		System.out.println(r6);
		
		System.out.println("---------业务api---------------------");
		for(int a=0;a<10;a++){
			String r7=RamdomUtil.get5RandomNumber();
			System.out.println("5位随机数----"+r7);
		}
		System.out.println("---------业务api--------end-------------");
	}
	
	///////////以下是供业务上使用的api//////////////////////////////////////////////////////////////////
	
	//生成5位随机数字
	public static String get5RandomNumber(){
		String res="";
		String one=RamdomUtil.createRandomDoubleWithoutDotByMath();
		if(one.length()<5){
			one+=RamdomUtil.createRandomDoubleWithoutDotByMath(2);
		}
		res=one.substring(one.length()-5, one.length());
		return res;
	}
}

打印:

0.16326098275998668
77.95240649484046
04574445034710284
197328824864798
------------------------------
1362061365776
136206136577600
---------业务api---------------------
5位随机数----98543
5位随机数----97315
5位随机数----00175
5位随机数----82552
5位随机数----76951
5位随机数----29536
5位随机数----02657
5位随机数----11367
5位随机数----93038
5位随机数----10604
---------业务api--------end-------------







分享到:
评论

相关推荐

    java练习java.lang.Math随机数

    你中过奖么?利用java实现一个35选7的彩票中奖号码产生程序。随机产生7个1至35之间(包括1和35)的不重复整数,并输出...随机数生成方法见JDK API的java.lang.Math类的random函数。(练习循环与break、continue、数组)

    java.lang.Math

    `java.lang.Math`是Java标准库中的一个核心类,它包含了一系列用于数学计算的静态方法。这个类提供了各种基本的数学运算,如平方根、指数、对数、三角函数等,以及随机数生成。在本篇文章中,我们将深入探讨`Math`类...

    北大青鸟Java.lang.rar经典例子

    4. **Math类**:包含了一些数学运算常量和方法,如`Math.PI`(圆周率)、`Math.sqrt()`(计算平方根)和`Math.random()`(生成一个0.0到1.0之间的随机浮点数)。 5. **Exception类**:异常处理是Java程序的重要组成...

    北大青鸟JAVA培训教程-java.lang包

    【java.lang包】是Java标准库中最基础的包,它包含了一些核心的类,比如`Math`, `Class`, `Object`等,这些类是所有Java程序的基础。在学习这个包时,首先要理解的是,`java.lang`包是自动导入到每一个Java程序中的...

    java.util.Random与Math.random区别

    2. 生成随机数的方式:Math.random()方法每次调用都生成一个新的伪随机数,而java.util.Random类可以生成一个伪随机数流。 3. 多线程支持:Math.random()方法是完全同步的,可以多个线程使用,而java.util.Random类...

    java随机数

    Java提供两种主要的方式来生成随机数:`java.lang.Math.random()` 和 `java.util.Random` 类。这两种方法各有优劣,适用于不同的场景。 #### Math.random() `Math.random()` 是一个简单易用的方法,用于生成一个...

    Java语言程序设计(郑莉)第三章课后习题答案.pdf

    程序使用了 java.lang.Math 类来生成随机整数,然后使用数组来存储这些数,输出最大值、最小值和大于 50 的整数个数。 5. 接收用户从键盘上输入的两个整数,求两个数的最大公约数和最小公倍数,并输出。 知识点:...

    浅谈Java中的几种随机数

    首先,最基本的随机数生成方式是使用java.lang.Math类提供的静态方法random()。这个方法会返回一个大于等于0.0且小于1.0的double类型的随机数。尽管这个方法非常简单易用,但它实际上并不直接生成随机数,而是返回一...

    Java产生随机数的两种方式

    本文将详细探讨Java中生成随机数的两种主要方法:`java.lang.Math.random()`静态方法和`java.util.Random`类。 首先,我们来看`java.lang.Math.random()`方法。这是一个静态方法,不需要实例化对象就可以直接调用。...

    commons-lang3-3.1 API

    RandomStringUtils – 用于生成随机的字符串; SerializationUtils – 用于处理对象序列化,提供比一般Java序列化更高级的处理能力; StringEscapeUtils – 用于正确处理转义字符,产生正确的Java、JavaScript、HTML...

    java中数学操作类的简介共5页.pdf.zip

    Java语言在处理数学运算时提供了丰富的工具类,主要集中在`java.lang.Math`和`java.util.Random`两个核心类中。本文将深入探讨这两个类的主要功能和使用方法。 首先,我们来看`java.lang.Math`类。这是一个包含基本...

    第三次实验:Java面向对象编程.doc

    在实验中,我们使用Java.lang.Math类生成100个0~99之间的随机整数,并找出其中的最大者及最小者,并统计大于50的整数个数。 六、面向对象编程的应用 面向对象编程的思想可以应用于各种领域,例如simulate真实世界...

    java web笔记之servlet生成验证码

    3. 生成随机验证码:使用`java.util.Random`和`java.lang.Math`类生成一组随机数字或字母,组合成验证码字符串。 4. 保存验证码:将生成的验证码保存在会话(Session)中,以便在验证时进行比较。使用`...

    Java程序设计API类库实训.pdf

    该类可以用来生成随机整数、随机浮点数等。 在实验中,我们使用了 Math 类和 Random 类来生成随机数,并进行了基本数学运算,如 sin、log、pow 等。 二、字符串类 * String 类:Java.lang.String 类是 Java 中最...

    JAVA中一类随机数生成方法设计思想.pdf

    在 JAVA 中,传统的随机数产生方法有两种:一种是使用 java.lang.Math.random() 静态方法,产生随机数范围是 [0, 1) ;另一种是创建 java.util.Random 对象,再利用 nextInt()、nextFloat() 等函数产生随机整数、...

    Java中不重复随机数的生成与分析.pdf

    例如,在软件系统的测试中,用于产生具有普遍意义的测试数据,在加密系统中用来产生密钥,在网络中用来生成随机验证码等。 在 Java 中,生成随机数可以使用 Random 类或 Math.random() 方法。然而,初学者在使用...

    java工具类

    3. **`java.lang.Math`**:提供了各种数学运算方法,如平方根(`sqrt()`)、最大值(`max()`)和最小值(`min()`)等。 4. **`java.text.SimpleDateFormat`**:用于日期和时间的格式化和解析,支持自定义日期格式。...

    Java SE编程入门教程 java Math(共11页).pptx

    `Math.random()`则能生成一个0到1之间的随机浮点数。 在实际编程中,这些数学函数经常被用于各种场景,比如模拟物理运动、数据分析、游戏开发等。掌握Java Math类的使用,对于提升编程能力,尤其是进行科学计算和...

    Java程序设计:chapter07 Java实用包.ppt

    例如,我们可以使用`Math.random()`生成0到1之间的随机浮点数,或者用`Math.pow(a, b)`计算a的b次方。 接下来,我们深入探讨`String`类。`String`在Java中是一个不可变的对象,用于表示文本数据。它提供了多种构造...

    java类库和常用类简介-PPT.ppt

    `Math`类是`java.lang`包中的一个静态类,提供了丰富的数学运算功能。该类没有构造方法,所有的方法都是静态的,可以直接通过类名调用。 - **常量**:`Math.E`表示自然对数的底数e,`Math.PI`表示圆周率π。 - **...

Global site tag (gtag.js) - Google Analytics