Skip to content

Commit 611ffab

Browse files
author
dssachan
committed
arraylist vs vector
1 parent f4b658f commit 611ffab

File tree

3 files changed

+189
-0
lines changed

3 files changed

+189
-0
lines changed
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
package CoreJava.arrayListVsVector;
2+
3+
import java.util.ArrayList;
4+
import java.util.Iterator;
5+
import java.util.Random;
6+
7+
/**
8+
* Created by dssachan on 29/09/16.
9+
* shows how to cause a ConcurrentModificationException
10+
*/
11+
public class ArrayListTest {
12+
13+
private static ArrayList<Integer> ints = new ArrayList<Integer>();
14+
15+
public static void main(String[] strings) {
16+
new Thread(new Runnable() {
17+
@Override
18+
public void run() {
19+
while (true) {
20+
ints.add(new Random().nextInt());
21+
try {
22+
Thread.sleep(100);
23+
} catch (Exception e) {
24+
25+
}
26+
}
27+
}
28+
}).start();
29+
30+
new Thread(new Runnable() {
31+
@Override
32+
public void run() {
33+
while (true) {
34+
ints.add(new Random().nextInt());
35+
try {
36+
Thread.sleep(100);
37+
} catch (Exception e) {
38+
39+
}
40+
}
41+
}
42+
}).start();
43+
44+
new Thread(new Runnable() {
45+
@Override
46+
public void run() {
47+
while (true) {
48+
ints.add(new Random().nextInt());
49+
try {
50+
Thread.sleep(100);
51+
} catch (Exception e) {
52+
53+
}
54+
}
55+
}
56+
}).start();
57+
58+
System.out.println("started");
59+
60+
try {
61+
Thread.sleep(5000);
62+
}catch (Exception e){}
63+
64+
Iterator<Integer> integerIterator = ints.iterator();
65+
while(true) {
66+
while (integerIterator.hasNext()) {
67+
System.out.println(integerIterator.next());
68+
}
69+
try{
70+
Thread.sleep(100);
71+
}catch (Exception e){}
72+
}
73+
74+
}
75+
76+
}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
package CoreJava.arrayListVsVector;
2+
3+
import java.io.PrintStream;
4+
import java.util.ArrayList;
5+
import java.util.Vector;
6+
import java.lang.System;
7+
/**
8+
* Created by dssachan on 29/09/16.
9+
*/
10+
public class TimeTest {
11+
static PrintStream ps = System.out;
12+
public static void main(String[] strings){
13+
ArrayList iA = new ArrayList();
14+
Vector iV = new Vector();
15+
Integer integer = new Integer(100);
16+
long t1 = System.nanoTime();
17+
for(int k =0;k<100000;k++) {
18+
iA.add(integer);
19+
}
20+
ps.println(iA);
21+
ps.println();
22+
ps.println(System.nanoTime() - t1);
23+
t1 = System.nanoTime();
24+
for(int k =0;k<100000;k++) {
25+
iV.add(integer);
26+
}
27+
ps.print(iV.toString());
28+
ps.println();
29+
ps.println(System.nanoTime() - t1);
30+
}
31+
}
Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
package CoreJava.arrayListVsVector;
2+
3+
import java.util.ArrayList;
4+
import java.util.Iterator;
5+
import java.util.Random;
6+
import java.util.Vector;
7+
8+
/**
9+
* Created by dssachan on 29/09/16.
10+
* shows how to cause a ConcurrentModificationException
11+
*/
12+
public class VectorTest {
13+
14+
private static Vector<Integer> ints = new Vector<Integer>();
15+
16+
public static void main(String[] strings) {
17+
18+
new Thread(new Runnable() {
19+
@Override
20+
public void run() {
21+
while (true) {
22+
ints.add(new Random().nextInt());
23+
try {
24+
Thread.sleep(100);
25+
} catch (Exception e) {
26+
27+
}
28+
}
29+
}
30+
}).start();
31+
32+
new Thread(new Runnable() {
33+
@Override
34+
public void run() {
35+
while (true) {
36+
ints.add(new Random().nextInt());
37+
try {
38+
Thread.sleep(100);
39+
} catch (Exception e) {
40+
41+
}
42+
}
43+
}
44+
}).start();
45+
46+
new Thread(new Runnable() {
47+
@Override
48+
public void run() {
49+
while (true) {
50+
ints.add(new Random().nextInt());
51+
try {
52+
Thread.sleep(100);
53+
} catch (Exception e) {
54+
55+
}
56+
}
57+
}
58+
}).start();
59+
60+
System.out.println("started");
61+
62+
try {
63+
Thread.sleep(5000);
64+
}catch (Exception e){}
65+
66+
Iterator<Integer> integerIterator = ints.iterator();
67+
while(true) {
68+
try {
69+
while (integerIterator.hasNext()) {
70+
System.out.println(integerIterator.next());
71+
}
72+
}catch (Exception e){
73+
e.printStackTrace();
74+
}
75+
try{
76+
Thread.sleep(100);
77+
}catch (Exception e){}
78+
}
79+
80+
}
81+
82+
}

0 commit comments

Comments
 (0)