Java字符串性能优化
生活随笔
收集整理的這篇文章主要介紹了
Java字符串性能优化
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
對字符串的性能進行優化,找出一種方法能夠以最快的時間創建賦值字符串。
我們使用String intern() 的方法來優化字符串。
完整代碼
public class Optimization {public static void main(String[] args){String variables[] = new String[50000]; for( int i=0;i <50000;i++){variables[i] = "s"+i;}long startTime0 = System.currentTimeMillis();for(int i=0;i<50000;i++){variables[i] = "hello";}long endTime0 = System.currentTimeMillis();System.out.println("直接使用字符串: "+ (endTime0 - startTime0) + " ms" );long startTime1 = System.currentTimeMillis();for(int i=0;i<50000;i++){variables[i] = new String("hello");}long endTime1 = System.currentTimeMillis();System.out.println("使用 new 關鍵字:" + (endTime1 - startTime1) + " ms");long startTime2 = System.currentTimeMillis();for(int i=0;i<50000;i++){variables[i] = new String("hello");variables[i] = variables[i].intern(); }long endTime2 = System.currentTimeMillis();System.out.println("使用字符串對象的 intern() 方法: " + (endTime2 - startTime2)+ " ms");} }結果輸出
直接使用字符串: 3 ms 使用 new 關鍵字:5 ms 使用字符串對象的 intern() 方法: 10 ms由于初始值的不同,所以對比的時間不具有對比性,我們應該在同等的條件下計算花費的時間。
完整代碼
public class StringOptimization {public static void main(String[] args) {String variables[] = new String[50000];long startTime0 = System.currentTimeMillis();for (int i = 0; i < 50000; i++) {variables[i] = "hello";}long endTime0 = System.currentTimeMillis();System.out.println("使用字面量直接賦值字符串,花費時間:" + (endTime0 - startTime0) + "毫秒");String variables1[] = new String[50000];long startTime1 = System.currentTimeMillis();for (int i = 0; i < 50000; i++) {variables1[i] = new String("hello");}long endTime1 = System.currentTimeMillis();System.out.println("使用字符串對象花費時間:" + (endTime1 - startTime1) + "毫秒");String variables2[] = new String[50000];long startTime2 = System.currentTimeMillis();for (int i = 0; i < 50000; i++) {variables2[i] = new String("hello");variables2[i] = variables2[i].intern();}long endTime2 = System.currentTimeMillis();System.out.println("使用字符串對象intern()方法花費時間:" + (endTime2 - startTime2) + "毫秒");} }結果輸出
使用字面量直接賦值字符串,花費時間:1毫秒 使用字符串對象花費時間:3毫秒 使用字符串對象intern()方法花費時間:8毫秒 創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的Java字符串性能优化的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Jsoup使用选择器语法来查找元素
- 下一篇: Java 获取集合元素的值