一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - 比較Java數組和各種List的性能小結

比較Java數組和各種List的性能小結

2020-06-08 11:50daisy JAVA教程

這篇文章主要是分別對Java數組、ArrayList、LinkedList和Vector進行隨機訪問和迭代等操作,并比較這種集合的性能。有需要的可以參考借鑒。

話不多說,直接看示例代碼

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
package cn.lion.test;
public class PerformanceTest {
   
   privatestatic final int SIZE =100000;
   publicstatic abstract class Test{
     privateString operation;
     publicTest(String operation){
       this.operation= operation;
     }
     publicabstract void test(List<String> list);
     publicString getOperation(){
       returnoperation;
     }
   }
   //執行迭代操作的匿名類
   staticTest iterateTest = new Test("iterate"){
     publicvoid test(List<String> list){
       for(inti=0; i<10; i++){
          Iterator<String>it = list.iterator();
          while(it.hasNext()){
            it.next();
          }
       }
     }
   };
   //執行隨機訪問的匿名類
   staticTest getTest = new Test("get"){
     publicvoid test(List<String> list){
       for(inti=0; i<list.size(); i++){
          for(intk=0; k<10; k++){
            list.get(k);
          }
       }
     }
   };
   //執行插入的匿名類
   staticTest insertTest = new Test("insert"){
     publicvoid test(List<String> list){
       ListIterator<String>it = list.listIterator(list.size()/2);
       for(inti=0; i<SIZE; i++){
          it.add("lion");
       }
     }
   };
   //執行刪除的匿名類
   staticTest removeTest = new Test("remove"){
     publicvoid test(List<String> list){
       ListIterator<String>it = list.listIterator();
       while(it.hasNext()){
          it.next();
          it.remove();
       }
     }
   };
   staticpublic void testArray(List<String> list){
     Test[]tests = {iterateTest, getTest};
     test(tests,list);
   }
   staticpublic void testList(List<String> list){
     Test[]tests = {insertTest, iterateTest, getTest, removeTest};
     test(tests,list);
   }
   staticpublic void test(Test[] tests, List<String> list){
     for(inti=0; i<tests.length; i++){
       System.out.print(tests[i].getOperation()+ "操作:");
       longt1 = System.currentTimeMillis();
       tests[i].test(list);
       longt2 = System.currentTimeMillis();
       System.out.print(t2-t1+ "ms");
       System.out.println();
     }
   }
   publicstatic void main(String[] args){
     
     List<String>list = null;
     //測試數組的迭代和隨機訪問操作
     System.out.println("------測試數組------");
     String[]tstr = new String[SIZE];
     Arrays.fill(tstr,"lion");
     list= Arrays.asList(tstr);
     testArray(list);
     
     tstr= new String[SIZE/2];
     Collection<String>coll = Arrays.asList(tstr);
     
     //測試Vector
     System.out.println("------測試Vector------");
     list= new Vector<String>();
     list.addAll(coll);
     testList(list);
     
     //測試LinkedList
     System.out.println("------測試LinkedList------");
     list= new LinkedList<String>();
     list.addAll(coll);
     testList(list);
     
     //測試ArrayList
     System.out.println("------測試Vector------");
     list= new ArrayList<String>();
     list.addAll(coll);
     testList(list);
   }
}

運行結果如圖

比較Java數組和各種List的性能小結

從結果可以看出,對數組進行隨機訪問和迭代操作的速度是最快的;對LinkedList進行插入和刪除操作的速度是最快的;對ArrayList進行隨機訪問的速度也很快;Vector類在各方面沒有突出的性能,且此類已不提倡使用了。

總結

以上就是本文的全部內容,希望對大家學習或者使用Java能有所幫助。如果有疑問可以留言討論。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 农村老妇1乱69系列小说 | 欧美一区二区三区免费高 | 91久久精品国产一区二区 | www.天天操| 太紧太深了受不了黑人 | tube69中国露脸 | 久久亚洲午夜牛牛影视 | 火影小南被爆羞羞网站进入 | 国产拍拍视频一二三四区 | 欧美伊人久久久久久久久影院 | 亚洲国产精品久久人人爱 | 男人猛激烈吃奶gif动态图 | jiuse在线 | 歪歪视频在线播放无遮挡 | 性关系视频免费网站在线观看 | 日本不卡视频免费的 | 国内精品一区二区在线观看 | 女同xx美女放| 丝瓜秋葵番茄绿巨人在线观看 | h黑寡妇一级毛片 | 色综合国产| 欧美特级午夜一区二区三区 | 99精品免费在线 | 亚洲人成伊人成综合网久久 | 日本视频二区 | 久久99精品国产自在自线 | 19+韩国女主播激情vip视频在线 | 免费一区在线观看 | 成年人在线观看视频免费 | 国产精品一区二区久久 | 亚洲精品久久久WWW游戏好玩 | 日本护士xxxx视频免费 | 羞羞污视频 | 久久精品中文騷妇女内射 | 羞羞污视频 | 韩国三级在线高速影院 | 爱操综合网 | 草草草视频在线观看 | 99ri在线视频网 | 日韩国产成人精品视频 | 精品无人区麻豆乱码1区2 |