java如何随机产生加法数_Java 中产生随机数的方法小结

本文介绍两种简单的Java随机数生成方法:使用System.currentTimeMillis()与Math.random()。通过具体案例展示如何生成随机数并应用于加法与减法练习程序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文章目录

前言

一、调用 System.currentTimeMillis() 方法

1.1、原理剖析

1.2、随机数加法程序

二、使用 Math.random() 方法

2.1、原理剖析

2.2、随机数减法程序

总结

前言

在 Java 中提供了很多的方法能够产生随机数。我们今天介绍其中最为简单的两种,对于初学者来说较为友好,同时附了两个简单的案例供大家参考。

5e54db53855c35072e32eefa67c5a970.gif

一、调用 System.currentTimeMillis() 方法

1.1、原理剖析

根据 API 的介绍,调用 System.currentTimeMillis() 方法我们可以获取 1970 年 1 月 1 日午夜到现在的毫秒数(例如:1203183086328 毫秒),我们可以通过取余的方式得到其最后一位的整数:

int number1 = (int)(System.currentTimeMillis() % 10);

1.2、随机数加法程序

通过程序产生随机数让一年级学生练习加法。程序随机产生两个一位整数,number1 和 number2,然后显示“What is 1 + 7?”

package program3_1;

import java.util.Scanner;

public class AdditionQuiz {

public static void main(String[] args) {

int number1 = (int)(System.currentTimeMillis() % 10);

int number2 = (int)(System.currentTimeMillis() / 7 % 10);

Scanner input = new Scanner(System.in);

System.out.print("What is " + number1 + " + " + number2 + " ?");

int answer = input.nextInt();

System.out.println(number1 + " + " + number2 + " = " + answer + " is " + (number1 + number2 == answer));

}

}

e73597bb7ce41f43c80e69777869c569.png

961ce440e384a4d850b0160fff886b69.png

二、使用 Math.random() 方法

2.1、原理剖析

使用 Math.random() 来获得一个 0.0 到 1.0 之间的随机 double 值,不包括 1.0。通过(int)(Math.random() * 10)会返回一个随机的一位整数(即 0 到 9 之间的数)。

int number1 = (int)(Math.random() * 10);

2.2、随机数减法程序

一个让一年级学生练习减法的程序,程序随机产生两个一位整数 number1 和 number2,且满足 number>=number2。显示问题:“What is 9 - 2 ?”学生输入答案后,显示消息判断是否正确。

package program3_3;

import java.util.Scanner;

public class SubtractionQuiz {

public static void main(String[] args) {

int number1 = (int)(Math.random() * 10);

int number2 = (int)(Math.random() * 10);

if(number1 < number2) {

int temp = number1;

number1 = number2;

number2 = temp;

}

System.out.println("What is " + number1 + " - " + number2 + " ?");

Scanner input = new Scanner(System.in);

int answer = input.nextInt();

if(number1 - number2 == answer) {

System.out.println("You are correct!");

}

else {

System.out.println("You are wrong!");

System.out.println(number1 + " - " + number2 + " should be " + (number1 - number2) + "!");

}

}

}

e609ce98a988652f1dad75e3c5fc1875.png

3c6de3196b27c1e9fa3b44b093f2e3f3.png

总结

本文给大家介绍了两种产生随机数的方法,这是最简单的两种。日后有机会我还会补充更多的方法汇总。另外大家还有什么方法呢?补充到下面吧!

09606db8ec5112cfffe6da1c71d24092.gif

感谢大家的支持,我是白鹿,一个不懈奋斗的程序猿。希望本贴能帮助到大家,欢迎大家的一键三连!如果还有什么问题、建议或者补充可以留言在帖子下方,给予更多人帮助!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值