use*_*287 7 java performance-testing
我想知道比较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 ")
Run Code Online (Sandbox Code Playgroud)
我只是想知道在最佳实践或性能明智的情况下使用哪一个
bsi*_*nau 14
亲自尝试一下:
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");
Run Code Online (Sandbox Code Playgroud)
输出:
MessageFormat:1125974 ns
StringBuilder:16705 ns
结论:
StringBuilder 工作得快得多,因为它只是为现有数组添加了一些字符.
| 归档时间: |
|
| 查看次数: |
5567 次 |
| 最近记录: |