```java
import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import javax.xml.crypto.Data;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.util.*;
import java.text.NumberFormat;
public class OrderNumberUtils {
private static final Logger logger = LoggerFactory.getLogger(OrderNumberUtils.class);
/**
*序号共19位
*指定位数,时间+空位补0+序号
* */
public static List<Map<String, Object>> orderNumber(List<Map<String, Object>> mapList) {
// 获取的List的数据长度
int size = mapList.size();
/**
*左边补充空位,用0去补充
* */
NumberFormat nf = NumberFormat.getInstance();
//设置是否使用分组
nf.setGroupingUsed(false);
//设置最大整数位数
nf.setMaximumIntegerDigits(11);
//设置最小整数位数
nf.setMinimumIntegerDigits(11);
//获取当前日期
Date date = new Date();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");
String format = simpleDateFormat.format(date);
logger.info("simpleDateFormat" + format);
for (int i = 0; i <size; i++) {
mapList.get(i).put("A", format + nf.format(i+1));
}
logger.info("设置完成之后的序号(拼接完成后的正确数据):" + mapList);
return mapList;
}
public static void main(String[] args) {
List<Map<String, Object>> mapList = new ArrayList<>();
Map<String, Object> map = new HashMap<>();
map.put("A", "22");
map.put("B", "44");
map.put("C", "66");
mapList.add(map);
Map<String, Object> map3 = new HashMap<>();
map3.put("A", "22");
map3.put("B", "44");
map3.put("C", "66");
mapList.add(map3);
Map<String, Object> map4 = new HashMap<>();
map4.put("A", "22");
map4.put("B", "44");
map4.put("C", "66");
mapList.add(map4);
orderNumber(mapList);
}
}
Java中根据时间进行序号排序,时间+空位补0+序号
于 2022-08-18 15:07:18 首次发布