我有一个简单的字符串,我需要在其中插入一些数字和字符串。
说 String a = "我的名字是 %s。我今年 %d 岁"。
我还需要在其中几个孔中插入相同的数字或字符串。我需要一个适用于至少 1.3 的古代 java 版本的解决方案,我知道 String.format (JDK 5+)。我读到格式化程序,我的头疼!
请帮忙。
我有一个简单的字符串,我需要在其中插入一些数字和字符串。
说 String a = "我的名字是 %s。我今年 %d 岁"。
我还需要在其中几个孔中插入相同的数字或字符串。我需要一个适用于至少 1.3 的古代 java 版本的解决方案,我知道 String.format (JDK 5+)。我读到格式化程序,我的头疼!
请帮忙。
您唯一的选择是在MessageFormat
这里使用。
你会输入:
String s = "My name is {0}. I am {1} years old";
并使用适当的方法将其呈现为字符串。例如:
String ret = MessageFormat.format(s, "John", 32);
我想放一个指向 javadoc 的链接,但是……我不知道自 1.3 以来发生了多大的变化!(好吧,添加了链接,它不会受伤)
(需要注意的是,即使在 2013 年,Java 的ResourceBundle
仍然使用和MessageFormat
读取 ISO-8859-1 中的属性文件,而不是 UTF-8)
这个如何
String text = "The user {0} has email address {1}."
String msg = MessageFormat.format(text, params);
而这另一个
String text = "The user {name} has email address {email}.";
Object[] params = { "nameRobert", "rhume55@gmail.com" };
Map map = new HashMap();
map.put("name", "Robert");
map.put("email", "rhume55@gmail.com");
System.out.println("1st : " + MapFormat.format(text, map));