产生随机一个12以内随机月份,和一个30以内随即天数,输出该日是本年的第多少天Java
时间: 2024-02-13 11:04:39 浏览: 66
好的,您的问题很容易解决,以下是Java的代码实现:
```java
import java.util.Random;
public class Main {
public static void main(String[] args) {
Random random = new Random();
int month = random.nextInt(12) + 1; // 随机生成1到12的整数
int day = random.nextInt(30) + 1; // 随机生成1到30的整数
int[] daysOfMonth = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; // 每个月份的天数
int sum = 0;
for (int i = 0; i < month - 1; i++) {
sum += daysOfMonth[i];
}
sum += day;
System.out.println("随机生成的日期为:" + month + "月" + day + "日");
System.out.println("该日是本年的第 " + sum + " 天");
}
}
```
代码解释:
1. 首先创建一个 Random 对象,用于生成随机数。
2. 然后用 `nextInt` 方法分别生成 1 到 12 之间和 1 到 30 之间的整数,分别表示月份和天数。
3. 接着创建一个数组 `daysOfMonth`,用于存储每个月份的天数。
4. 使用一个循环计算出当前日期是本年的第几天,具体做法是先将前面所有月份的天数累加起来,再加上当前月份的天数。
5. 最后输出随机生成的日期和该日是本年的第几天。
阅读全文