我在代码
中看到过类似的内容somestring = "Today is {0}, tomorrow is {1}";
我知道它会将值从另一个变量放入字符串中,但我该怎么做?
更新:有几种方法可以达到这种效果,哪种方式最有效?
答案 0 :(得分:8)
您是否看过MessageFormat文档?
e.g。 (例子)
Object[] arguments = {
new Integer(7),
new Date(System.currentTimeMillis()),
"a disturbance in the Force"
};
String result = MessageFormat.format(
"At {1,time} on {1,date}, there was {2} on planet {0,number,integer}.",
arguments);
output: At 12:30 PM on Jul 3, 2053, there was a disturbance
in the Force on planet 7.
关于你的问题。效率,如果遇到性能问题,我只会担心这个问题。我希望上述内容合理有效 - 特别是考虑到可能会有一些输出(标准输出或类似?),我认为这是一个更大的瓶颈。
答案 1 :(得分:5)
// Assuming variables today and tomorrow are strings.
somestring = String.format("Today is %s, tomorrow is %s", today, tomorrow);
答案 2 :(得分:0)
您可以使用java.text.MessageFormat类
答案 3 :(得分:0)
我认为你的例子特别是使用java.text.MessageFormat。