一,网上案例
用法1;
1 String msg = "{0}{1}{2}{3}{4}{5}{6}{7}{8}"; 2 Object [] array = new Object[]{"A","B","C","D","E","F","G","H","I",}; 3 String value = MessageFormat.format(msg, array); 4 System.out.println(value); // 输出:ABCDEFGHI
用法2:
1 String value = MessageFormat.format("oh, {0} is ‘a‘ pig", "ZhangSan"); 2 System.out.println(value); // 输出:oh, ZhangSan is a pig
用法3:
1 MessageFormat.format("{0}{1}", 1, 2); // 结果12 2 MessageFormat.format("‘{0}{1}", 1, 2); // 结果{0}{1} 3 MessageFormat.format("‘{0}‘-{1}", 1, 2); // 结果{0}-2
用法4:
1 String value = MessageFormat.format("oh, ‘‘{0}‘‘ is a pig", "ZhangSan"); 2 System.out.println(value); // 输出:oh, ‘ZhangSan‘ is a pig
二,项目中的应用
案例1:定义一个常量
1 private static final String IMPORT_OUT_OF_MAX_LINE = "<label class=‘error-line‘>最多只能导入{0}条数据。</label>";
用法的时候就是这种,比如说importMaxLineNum是1,则aa就是<label class=‘error-line‘>最多只能导入1条数据。</label>
1 var aa=MessageFormat.format(IMPORT_OUT_OF_MAX_LINE, importMaxLineNum);
案例2:定义两个常量
1 private static final String LINE_NO = "<label class=‘error-line‘>{0} 行:</label>"; 2 3 private static final String source_agent_not_existence = "数据校验 :{0}不能为空!";
String lineHeader = MessageFormat.format(LINE_NO, index + 2); var aa= sb.append(lineHeader).append(MessageFormat.format(source_agent_not_existence, "任务类型")).append("|");
var bb=sb.append(lineHeader).append(MessageFormat.format(source_agent_not_existence, "原销售域账号")).append("|");
var cc=sb.append(lineHeader).append(MessageFormat.format(source_agent_not_existence, "目标销售域账号")).append("|");
这种用法就可以根据条件的不容来判断后面要填的值,比如说aa
现在index是0,那么
那么出来的结果就是
<label class=‘error-line‘>2 行:</label> 数据校验 :任务类型不能为空!
案例3:
1 private static final String LINE_NO = "<label class=‘error-line‘>{0} 行:</label>"; 2 private static final String source_agent_not_existences = "数据校验 :快钱账号:{0} 和快钱账号销售域账号 {1} 查询不到快钱账号信息!"; 3 String lineHeader = MessageFormat.format(LINE_NO, index + 2); 4 var aa=sb.append(lineHeader).append(MessageFormat.format(source_agent_not_existences, order.getEmail(),order.getSourceSalesDomainName())).append("|");
比如说index是0
order.getEmail()是44444@qq.com
order.getSourceSalesDomainName()))是张三
那么结果出来就是
<label class=‘error-line‘>2 行:</label>数据校验 :快钱账号:44444@qq.com 和快钱账号销售域账号张三 查询不到快钱账号信息!
效果图。。。。。