Skip to content

Commit 83f4511

Browse files
调整集合类型目录结构
1 parent bbc9625 commit 83f4511

23 files changed

Lines changed: 490 additions & 420 deletions

src/main/java/basic/collection/comparable/Apple.java

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,29 +2,23 @@
22

33
public class Apple implements Comparable<Apple> {
44

5-
private int count;
5+
private final int count;
66

77
public Apple(int count) {
88
this.count = count;
99
}
1010

1111
@Override
1212
public int compareTo(Apple apple) {
13-
if (apple.getCount() < count) {
14-
return -1;
15-
} else if (apple.getCount() > count) {
16-
return 1;
17-
} else {
18-
return 0;
19-
}
13+
return Integer.compare(apple.getCount(), count);
2014
}
2115

2216
public int getCount() {
2317
return count;
2418
}
2519

2620
public String toString() {
27-
return new Integer(getCount()).toString();
21+
return Integer.toString(getCount());
2822
}
2923

3024
public static void main(String[] args) {

src/main/java/basic/collection/comparable/MyComparator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public static void main(String[] args) {
2727
for (int i = 0; i < 10; i++) {
2828
appleList.add(new Apple(10 - i));
2929
}
30-
Collections.sort(appleList, myComparator);
30+
appleList.sort(myComparator);
3131
System.out.println(Arrays.toString(appleList.toArray()));
3232
}
3333

src/main/java/basic/collection/map/AssociativeArray.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
* @param <V>
1010
*/
1111
public class AssociativeArray<K, V> {
12-
private Object[][] pairs;
12+
private final Object[][] pairs;
1313
private int index;
1414

1515
public AssociativeArray(int length) {

src/main/java/basic/collection/map/FailFast.java

Lines changed: 18 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -4,26 +4,28 @@
44
import java.util.ConcurrentModificationException;
55
import java.util.Iterator;
66
import java.util.List;
7+
78
/**
8-
*
99
* ����:����IJ�ͬ�����޸�����ʱ�����ܻᵼ������״̬��һ�£����Իᱨ��
10-
* @author yangqc
1110
*
11+
* @author yangqc
12+
* <p>
1213
* 2016-6-15
1314
*/
1415
public class FailFast {
15-
public static void main(String[] args) {
16-
List<String> c=new ArrayList<>();
17-
c.add("An Object");
18-
System.out.println(c.size());
19-
Iterator<String> it=c.iterator();
20-
c.remove(0);
21-
c.add(0, "123");
22-
System.out.println(c.size());
23-
try{
24-
String s=it.next();
25-
}catch(ConcurrentModificationException e){
26-
System.out.println(e);
27-
}
28-
}
16+
17+
public static void main(String[] args) {
18+
List<String> c = new ArrayList<>();
19+
c.add("An Object");
20+
System.out.println(c.size());
21+
Iterator<String> it = c.iterator();
22+
c.remove(0);
23+
c.add(0, "123");
24+
System.out.println(c.size());
25+
try {
26+
String s = it.next();
27+
} catch (ConcurrentModificationException e) {
28+
System.out.println(e);
29+
}
30+
}
2931
}
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
package basic.collection.map;
2+
3+
import java.util.ArrayList;
4+
import java.util.Iterator;
5+
import java.util.List;
6+
import java.util.concurrent.CopyOnWriteArrayList;
7+
8+
public class IteratorTest {
9+
10+
public static void main(String[] args) {
11+
test();
12+
ArrayList<Integer> al = new ArrayList<>();
13+
al.add(1);
14+
al.add(2);
15+
Iterator<Integer> iterator = al.iterator();
16+
while (iterator.hasNext()) {
17+
iterator.remove();
18+
iterator.remove();//会报错
19+
}
20+
}
21+
22+
public static void test() {
23+
List<String> cawList = new CopyOnWriteArrayList<>();
24+
cawList.add("1");
25+
cawList.add("2");
26+
cawList.add("3");
27+
Iterator<String> iterator = cawList.iterator();
28+
while (iterator.hasNext()) {
29+
System.out.println(iterator.next());
30+
iterator.remove();
31+
}
32+
}
33+
34+
public static void test2() {
35+
CopyOnWriteArrayList<String> userNames = new CopyOnWriteArrayList<String>() {{
36+
add("Hollis");
37+
add("hollis");
38+
add("HollisChuang");
39+
add("H");
40+
}};
41+
42+
Iterator<String> it = userNames.iterator();
43+
44+
for (String userName : userNames) {
45+
if (userName.equals("Hollis")) {
46+
userNames.remove(userName);
47+
}
48+
}
49+
50+
System.out.println(userNames);
51+
52+
while(it.hasNext()){
53+
System.out.println(it.next());
54+
}
55+
}
56+
57+
}

src/main/java/basic/collection/test/CollectionDemo1.java

Lines changed: 0 additions & 47 deletions
This file was deleted.

src/main/java/basic/collection/test/CollectionDemo2.java

Lines changed: 0 additions & 27 deletions
This file was deleted.

src/main/java/basic/collection/test/CollectionDemo3.java

Lines changed: 0 additions & 39 deletions
This file was deleted.

src/main/java/basic/collection/test/CollectionIterator.java

Lines changed: 0 additions & 29 deletions
This file was deleted.

src/main/java/basic/collection/test/ListDemo1.java

Lines changed: 0 additions & 46 deletions
This file was deleted.

0 commit comments

Comments
 (0)