java随机数生成a到z_Java 随机数的产生

一、通过Math类的random()方法生成随机数

默认情况下,Math.random()产生的随机数范围为大于等于0小于1的double型随机数。但是只要对这个方法进行一些灵活的处理,就可以获取任意范围的随机数。

例1:(int)(Math.random()*n),此时会产生一个大于等于0小于n之间的随机数。

说明:(int)只是截取整数部分,不会四舍五入。另外(int)只会转换最近的。如(int)5.2/2.0=2.5;

(int)(5.2/2.0)=2。

例2: m +(int) (Math.random()*n),返回大于等于m小于m+n(不包括m+n)之间的随机数。

说明:要产生x到y的随机数,先产生0到y – x的随机数,然后加上x。比如:

x + (int)(Math.random()*(y - x));

例3:(char)('a'+Math.random()*('z'-'a'+1));返回字符a~z之间的随机字符。

说明:同样也可以得到A~Z之间的随机字符。

例4:(int)(Math.random()*50%33 + 2);产生2到35的随机数。

注意:random()方法返回的值实际上是伪随机数,它通过复杂的运算得到一系列的数。该方法是通过当前时间作为随机数生成器的参数,所以每次执行程序都会产生不同的随机数。

二、通过Random类生成随机数

java.util.Random有两种构造方法,分别是Random()和Random(long seed)。Random()使用系统当前时间即System.currentTimeMills()作为发生器种子。Random(long seed)使用指定的seed作为发生器的种子。随机数发生器(Random)对象产生以后,通过调用不同的方法获得不同类型的随机数。

常用的方法:

1a252ee5c9a82e2512532b927c54023c.png

说明:int型内存分配4个字节,共32位,因此最多能表示232个数。如果最高位是0的话,表示正数:0到231-1(减去1是因为从0开始)。如果最高位是1的话,表示负数:-231到0。

注意:如果两个Random对象使用相同的种子,并且以相同的顺序调用相同得到函数那他们 的返回结果完全相同。

例1:获取指定范围内的随机数(随机数控制在某个范围内,使用求余运算和Math.abs()方法)。

Random  r = new Random();

Math.abs( r.nextInt()%10);返回0到10的随机数。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 您好,我可以回答您的问题。Java 实现 4 位混合随机数的代码如下: ``` import java.util.Random; public class RandomNumberGenerator { public static void main(String[] args) { Random random = new Random(); int num1 = random.nextInt(10); // 生成 ~9 的随机整数 int num2 = random.nextInt(26) + 65; // 生成 A~Z 的随机整数 int num3 = random.nextInt(26) + 97; // 生成 a~z 的随机整数 int num4 = random.nextInt(10); // 生成 ~9 的随机整数 char char1 = (char) num2; // 将整数转换为对应的字符 char char2 = (char) num3; System.out.println("" + num1 + char1 + char2 + num4); // 输出混合随机数 } } ``` 希望能对您有所帮助。 ### 回答2: 使用Java实现4位混合随机数可以借助Random类和StringBuilder类来生成。 步骤如下: 1. 导入Random类和StringBuilder类: ```java import java.util.Random; import java.lang.StringBuilder; ``` 2. 创建Random对象: ```java Random random = new Random(); ``` 3. 创建StringBuilder对象: ```java StringBuilder sb = new StringBuilder(); ``` 4. 循环生成4位随机数: ```java for (int i = 0; i < 4; i++) { // 生成一个随机数(0-9) int num = random.nextInt(10); // 将随机数添加到StringBuilder对象中 sb.append(num); } ``` 5. 输出生成的4位随机数: ```java System.out.println(sb.toString()); ``` 完整代码如下: ```java import java.util.Random; import java.lang.StringBuilder; public class Main { public static void main(String[] args) { Random random = new Random(); StringBuilder sb = new StringBuilder(); for (int i = 0; i < 4; i++) { int num = random.nextInt(10); sb.append(num); } System.out.println(sb.toString()); } } ``` 执行以上代码,就可以生成一个4位混合随机数。 ### 回答3: 要实现4位混合随机数,可以使用Java随机数生成器(Random类)配合字符串操作来完成。具体步骤如下: 1. 首先,导入Java的Random类:import java.util.Random; 2. 创建一个Random对象:Random random = new Random(); 3. 生成一个1到9之间的随机数,并将其转换成字符串:String randomNum1 = Integer.toString(random.nextInt(9) + 1); 4. 生成一个英文字母的随机数,并将其转换成字符串:char randomChar1 = (char) (random.nextInt(26) + 'a'); String randomChar1String = Character.toString(randomChar1); 5. 生成一个1到9之间的随机数,并将其转换成字符串:String randomNum2 = Integer.toString(random.nextInt(9) + 1); 6. 生成一个英文字母的随机数,并将其转换成字符串:char randomChar2 = (char) (random.nextInt(26) + 'a'); String randomChar2String = Character.toString(randomChar2); 7. 将生成的四个字符串拼接在一起形成最终的随机数:String randomCode = randomNum1 + randomChar1String + randomNum2 + randomChar2String; 通过以上步骤,就能够实现一个4位混合随机数的生成。这个随机数由一个1到9之间的数字、一个英文字母、一个1到9之间的数字和一个英文字母组成,总共四位。每次执行上述步骤都会得到一个不同的随机数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值