[英]How does a StringBuilder reduce time a Java program takes drastically?
有兩個 Java 代碼片段。 下面分享一下——
1.
Collections.sort(al);
Iterator<Integer> it = al.iterator();
while(it.hasNext()){
sb.append(it.next());
sb.append("\n");
}
System.out.println(sb.toString());
2.
Collections.sort(al);
Iterator<Integer> it = al.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
分享上述程序花費的時間 - 1. 1.43 秒 2. 4.28 秒
我想知道 StringBuilder 有什么神奇的作用,有人可以指導嗎?
減慢執行時間的不是您的 StringBuilder,而是您的 System.out.println() 語句。
它很慢,因為
必須將字節發送到控制台應用程序 -> 每個字符都必須使用真字體呈現(導致處理緩慢) -> 可能必須滾動顯示區域以將新行附加到可見區域。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.