Skip to content

Commit e841f44

Browse files
committed
Adding more collection examples
1 parent 7d06a38 commit e841f44

File tree

5 files changed

+166
-6
lines changed

5 files changed

+166
-6
lines changed

Advanced-Java/src/collections/ListDemo.java

+4
Original file line numberDiff line numberDiff line change
@@ -89,5 +89,9 @@ public static void main(String[] args) {
8989
numbersLinkedList.forEach(System.out::println);
9090

9191
System.out.println(numbersLinkedList.contains(3));
92+
93+
int[] nums = new int[5];
94+
Arrays.fill(nums, 1);
95+
Arrays.sort(nums);
9296
}
9397
}
+48
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
package collections;
2+
3+
// Entity / model / POJO
4+
public class Person implements Comparable<Person>{
5+
String name;
6+
int age;
7+
8+
public Person(String name, int age) {
9+
this.name = name;
10+
this.age = age;
11+
}
12+
13+
public String getName() {
14+
return name;
15+
}
16+
17+
public void setName(String name) {
18+
this.name = name;
19+
}
20+
21+
public int getAge() {
22+
return age;
23+
}
24+
25+
public void setAge(int age) {
26+
this.age = age;
27+
}
28+
29+
@Override
30+
public String toString() {
31+
return "Person{" +
32+
"name='" + name + '\'' +
33+
", age=" + age +
34+
'}';
35+
}
36+
37+
@Override
38+
public int compareTo(Person o) {
39+
if (this.getName().compareTo(o.getName()) == 0) {
40+
if (this.getAge() > (o.getAge())) return 1;
41+
else return -1;
42+
} else if (this.getName().compareTo(o.getName()) > 0){
43+
return 1;
44+
} else {
45+
return -1;
46+
}
47+
}
48+
}

Advanced-Java/src/collections/QueueDemo.java

+20
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,26 @@ public static void main(String[] args) {
2727
customQueue2.addLast("Ramadan");
2828
customQueue2.addLast("Mubarak");
2929
customQueue2.forEach(System.out::println);
30+
31+
Queue<Person> people = new PriorityQueue<>(Comparator.comparingInt(Person::getAge));
32+
Person ramadan = new Person("Ramadan", 34);
33+
Person dawan = new Person("Dawan", 32);
34+
Person sheriffo = new Person("Sheriffo", 33);
35+
Person ramadan2 = new Person("Ramadan", 31);
36+
people.add(ramadan);
37+
people.add(dawan);
38+
people.add(sheriffo);
39+
people.add(ramadan2);
40+
41+
System.out.println("PQ for Person");
42+
// people.forEach(System.out::println);
43+
44+
while(true)
45+
{
46+
Person e = people.poll();
47+
System.out.println(e);
48+
if(e == null) break;
49+
}
3050
}
3151
}
3252

+47-6
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
package collections;
22

33
import java.util.HashSet;
4+
import java.util.LinkedHashSet;
45
import java.util.Set;
6+
import java.util.TreeSet;
57

68
/**
79
* 1. Unordered
@@ -15,15 +17,54 @@ public static void main(String[] args) {
1517
numbersSet.add(2);
1618
numbersSet.add(3);
1719
numbersSet.add(5);
20+
numbersSet.add(1);
21+
numbersSet.add(0);
1822

19-
for (int i = 0; i < 10; i++) {
20-
numbersSet.add(i);
21-
}
22-
23-
numbersSet.add(5);
23+
// for (int i = 0; i < 10; i++) {
24+
// numbersSet.add(i);
25+
// }
26+
//
27+
// numbersSet.add(5);
2428

29+
System.out.println("HashSet");
2530
numbersSet.forEach(System.out::println);
2631

27-
System.out.println(numbersSet.contains(4));
32+
// System.out.println(numbersSet.contains(4));
33+
34+
Set<Integer> numbersLinkedSet = new LinkedHashSet<>(32, .5f);
35+
numbersLinkedSet.add(3);
36+
numbersLinkedSet.add(2);
37+
numbersLinkedSet.add(3);
38+
numbersLinkedSet.add(5);
39+
numbersLinkedSet.add(1);
40+
numbersLinkedSet.add(0);
41+
42+
43+
System.out.println("LinkedHashSet");
44+
numbersLinkedSet.forEach(System.out::println);
45+
46+
Set<Integer> numbersTreeSet = new TreeSet<>();
47+
numbersTreeSet.add(3);
48+
numbersTreeSet.add(2);
49+
numbersTreeSet.add(3);
50+
numbersTreeSet.add(5);
51+
numbersTreeSet.add(1);
52+
numbersTreeSet.add(0);
53+
54+
System.out.println("TreeSet");
55+
numbersTreeSet.forEach(System.out::println);
56+
57+
Set<Person> people = new TreeSet<>();
58+
Person ramadan = new Person("Ramadan", 34);
59+
Person dawan = new Person("Dawan", 32);
60+
Person sheriffo = new Person("Sheriffo", 33);
61+
Person ramadan2 = new Person("Ramadan", 31);
62+
people.add(ramadan);
63+
people.add(dawan);
64+
people.add(sheriffo);
65+
people.add(ramadan2);
66+
67+
System.out.println("TreeSet for Person");
68+
people.forEach(System.out::println);
2869
}
2970
}
+47
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
package collections;
2+
3+
import java.util.HashMap;
4+
import java.util.LinkedHashMap;
5+
import java.util.Map;
6+
import java.util.TreeMap;
7+
8+
public class mapDemo {
9+
10+
public static void main(String[] args) {
11+
Map<String, Integer> personAge = new HashMap<>();
12+
personAge.put("Ramadan", 32);
13+
// personAge.put("Ramadan", 34);
14+
personAge.put("Dawan", 31);
15+
personAge.put("Sheriffo", 35);
16+
17+
// personAge.keySet().forEach(System.out::println);
18+
// personAge.values().forEach(System.out::println);
19+
20+
// iterative approach
21+
// for (Map.Entry<String, Integer> entry: personAge.entrySet()) {
22+
// System.out.println(entry.getKey() + " : " + entry.getValue());
23+
// }
24+
25+
// functional
26+
System.out.println("*** HashMap ***");
27+
personAge.forEach((k, v) -> System.out.println(k + " : " + v));
28+
29+
Map<String, Integer> personAgeLinkedMap = new LinkedHashMap<>();
30+
personAgeLinkedMap.put("Ramadan", 32);
31+
// personAge.put("Ramadan", 34);
32+
personAgeLinkedMap.put("Dawan", 31);
33+
personAgeLinkedMap.put("Sheriffo", 35);
34+
35+
System.out.println("*** LinkedHashMap ***");
36+
personAgeLinkedMap.forEach((k, v) -> System.out.println(k + " : " + v));
37+
38+
Map<String, Integer> personAgeOrderedMap = new TreeMap<>();
39+
personAgeOrderedMap.put("Ramadan", 32);
40+
// personAge.put("Ramadan", 34);
41+
personAgeOrderedMap.put("Dawan", 31);
42+
personAgeOrderedMap.put("Sheriffo", 35);
43+
44+
System.out.println("*** TreeMap ***");
45+
personAgeOrderedMap.forEach((k, v) -> System.out.println(k + " : " + v));
46+
}
47+
}

0 commit comments

Comments
 (0)