source: DCWoRMS/trunk/example/tomekp/experiment1/PerfTest.java @ 477

Revision 477, 2.3 KB checked in by wojtekp, 13 years ago (diff)
  • Property svn:mime-type set to text/plain
Line 
1package tomekp.experiment1;
2
3import java.util.ArrayList;
4import java.util.HashMap;
5import java.util.List;
6
7import org.apache.commons.lang.ArrayUtils;
8
9public class PerfTest {
10
11        /**
12         * @param args
13         */
14        public static void main(String[] args) {
15                // TODO Auto-generated method stub
16
17                List<String> list1 = null;
18                List<String> list2 = new ArrayList<String>();
19                list2.addAll(list1);
20                long sm1 = System.currentTimeMillis();
21                for(int i =0;i < 10000000;i++){
22                        HashMap hm = new HashMap(1);
23                        hm.put(1, 1);
24                }
25                long em1  = System.currentTimeMillis();
26                System.out.println("map1:" + (em1 -sm1 ));
27               
28                long sm2 = System.currentTimeMillis();
29                for(int i =0;i < 10000000;i++){
30                        HashMap hm = new HashMap(2);
31                        hm.put(1, 1);
32                }
33                long em2  = System.currentTimeMillis();
34                System.out.println("map1:" + (em2 -sm2 ));
35               
36                int boundary = 1000;
37                System.out.println("a");
38                List<String> list = new ArrayList<String>();
39                for(int i = 0;i < boundary;i++){
40                        list.add("a"+i);
41                }
42               
43                /*System.out.println("b");
44                String longString = new String();
45                for(int i = 0;i < boundary ;i++){
46                        longString = longString.concat("a"+i+"_");
47                }*/
48               
49                System.out.println("c");
50               
51                long s = System.currentTimeMillis();
52                String[] array = list.toArray(new String[list.size()]);
53                long e = System.currentTimeMillis();
54                System.out.println("transform: " + (e-s));
55               
56                long s1 = System.currentTimeMillis();
57                for(int i = 0;i < boundary ;i++){
58                        if(list.contains("a"+i)){
59                                //System.out.println("ok1");
60                        }
61                }
62                long e1 = System.currentTimeMillis();
63                System.out.println("list: " + (e1-s1));
64
65                /*long s2 = System.currentTimeMillis();
66                for(int i = 0;i < boundary; i++){
67                        if(longString.contains("a"+i)){
68                                //System.out.println("ok2");
69                        }
70                }
71                long e2 = System.currentTimeMillis();
72                System.out.println("string:" + (e2-s2));
73                */
74               
75                long s3 = System.currentTimeMillis();
76                for(int i = 0;i < boundary; i++){
77                        if(array[i].equals("a"+i)){
78                                //System.out.println("ok3");
79                                //System.out.println(array[i]);
80                        }
81                }
82                long e3 = System.currentTimeMillis();
83                System.out.println("array:" + (e3-s3));
84               
85               
86                long s5 = System.currentTimeMillis();
87                ArrayUtils.contains(list.toArray(new String[list.size()]), new String("a"+1000));
88                long e5 = System.currentTimeMillis();
89                System.out.println("array:" + (e5-s5));
90        }
91
92}
93
Note: See TracBrowser for help on using the repository browser.