一 概述
最近接到一个需求,需要将几百个字中的某些位置的值做成可读取数据库实时配置的数据。
二 思路与做法
想法一:通过StringBuilder进行字符串拼接,将变量进行拼接。这样简单直观,但是就是不够灵活。
想法二:通过特殊字符,然后通过replace方法进行值的替换。这样相当于有多少个值就好执行多少次replace方法。
想法三:通过MessageFormat类来对进行占位符替换。
示例代码:
MessageFormat messageFormat = new MessageFormat("您好,你的短信验证码是{0},{1}分钟内有效!");
Object[] format = new Object[]{"666666",999};
System.out.println(messageFormat.format(format));
结果:

三 MessageForamt对数字怎加逗号的处理
问题描述,当替换传入的值是大于等于1000的时候就会出现逗号,如下。

想要解决这个问题,我们只要将大于等于1000的数值类型换成字符串进行占位符替换即可。

这样子,问题就解决了。。。
本文探讨了三种在字符串中插入动态数据的方法,包括StringBuilder拼接、replace方法替换和使用MessageFormat类。重点介绍了MessageFormat的使用,通过示例展示了如何创建带有占位符的字符串并进行替换。当遇到数字格式化问题,如自动添加逗号时,解决方案是将数值转换为字符串进行处理。
1416

被折叠的 条评论
为什么被折叠?



