在超市购物时,小票上都会有一个订单号,而且每个订单号都 是唯一的。本例要求使用Java编写程序,模拟订单系统中订单号的生成。在生成订单号时,使用年月日和毫秒值组合生成唯一订 单号。例如,给定一个包括年月日以及毫秒值的数组 arr={2020,0504,1101},将其拼接成字符串s:[202005041101], 作为一个订单号。
时间: 2024-02-24 13:59:54 浏览: 98
练习——打印购物小票并计算积分-使用java理解程序逻辑第二章
好的,可以按照以下步骤来生成订单号:
1. 将年月日的数字转换成字符串,并在月份和日期的前面补0,以保证格式统一。
```java
String year = String.valueOf(arr[0]);
String month = String.format("%02d", arr[1]);
String day = String.format("%02d", arr[2]);
```
2. 将年月日和毫秒值拼接成一个字符串作为订单号。
```java
String orderId = year + month + day + String.valueOf(System.currentTimeMillis()).substring(8);
```
完整代码如下:
```java
public class OrderIdGenerator {
public static void main(String[] args) {
int[] arr = {2020, 0504, 1101};
String year = String.valueOf(arr[0]);
String month = String.format("%02d", arr[1]);
String day = String.format("%02d", arr[2]);
String orderId = year + month + day + String.valueOf(System.currentTimeMillis()).substring(8);
System.out.println(orderId);
}
}
```
运行程序,输出类似于以下格式的订单号:
```text
20200504110184423
```
阅读全文