Java.toCharArray()和charAt()的效率對比分析
阿新 • • 發佈:2020-10-09
LeetCode中的一道演算法題,使用toCharArray()時間超時,換成charAt()之後通過,所以測試一下兩者的執行效率:
public static void test() { String s = "a"; for(int i = 0; i < 100000; i++) { s += "a"; } long start1 = System.currentTimeMillis(); char[] cs = s.toCharArray(); for(char c:cs) { System.out.println(1); // 需要輸入語句進入迴圈 } long end1 = System.currentTimeMillis(); long start2 = System.currentTimeMillis(); for(int i = 0; i < s.length(); i++) { char c = s.charAt(i); System.out.println(1); } long end2 = System.currentTimeMillis(); System.out.println(end1 - start1); System.out.println(end2 - start2); }
結果證明charAr()效率較高些,執行結果為:
1980
1443
補充知識:JAVA: toCharArray()類 將字串轉為陣列
我就廢話不多說了,大家還是直接看程式碼吧~
public class Demo { public static void main(String[] args){ String str = "helloworld"; char[] data = str.toCharArray();// 將字串轉為陣列 for (int x = 0; x < data.length; x++) { System.out.print(data[x] + " "); data[x] -= 32; System.out.print(data[x] + " "); } System.out.println(new String(data)); } }
以上這篇Java.toCharArray()和charAt()的效率對比分析就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。