性能问题:“java.text.MessageFormat.format”vs“StringBuilder”

我想知道MessageFormat或StringBuilder类的比较.
假设一个例子我有一个字符串.对于性能明智的哪一个是快速的:
java.text.MessageFormat.format或StringBuilder(“Test”).append(“Hello”)?

String txt = java.text.MessageFormat.format("Test {0}"," Hello") 
String txt1=   new StringBuilder("Test ").append("Hello ")

我只是想知道在最佳实践或性能明智的情况下使用哪一个

最佳答案
亲自尝试一下:

long start = System.nanoTime();
String txt = MessageFormat.format("Test {0}"," Hello");
System.out.println("MessageFormat: " + (System.nanoTime() - start) + " ns");

start = System.nanoTime();
String txt1 = new StringBuilder("Test ").append("Hello").toString();
System.out.println("StringBuilder: " + (System.nanoTime() - start) + " ns");

输出:

MessageFormat: 1125974 ns

StringBuilder: 16705 ns

结论:

StringBuilder工作得更快,因为它只是为现有数组添加了一些字符.

转载注明原文:性能问题:“java.text.MessageFormat.format”vs“StringBuilder” - 代码日志