Skip to content

Commit 3a2fa0a

Browse files
committed
Some updates on the map and list example, forgot exactly what I did
1 parent 7352eeb commit 3a2fa0a

File tree

10 files changed

+121
-15
lines changed

10 files changed

+121
-15
lines changed
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<classpath>
33
<classpathentry kind="src" path="src"/>
4-
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
4+
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
55
<classpathentry kind="output" path="bin"/>
66
</classpath>
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
eclipse.preferences.version=1
22
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
3-
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
3+
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
44
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
5-
org.eclipse.jdt.core.compiler.compliance=1.7
5+
org.eclipse.jdt.core.compiler.compliance=1.8
66
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
77
org.eclipse.jdt.core.compiler.debug.localVariable=generate
88
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
99
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
1010
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
11-
org.eclipse.jdt.core.compiler.source=1.7
11+
org.eclipse.jdt.core.compiler.source=1.8

com.vogella.java.collections.list/src/com/vogella/java/collections/list/ListExample.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
public class ListExample {
77
public static void main(String[] args) {
8-
List<Integer> list = new ArrayList<Integer>();
8+
List<Integer> list = new ArrayList<>();
99
list.add(3);
1010
list.add(2);
1111
list.add(1);
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
package com.vogella.java.collections.list;
2+
3+
import java.util.ArrayList;
4+
import java.util.List;
5+
6+
public class ListSorter {
7+
public static void main(String[] args) {
8+
System.out.println("Sorting with natural order");
9+
List<String> l1 = createList();
10+
l1.sort(null);
11+
l1.forEach(System.out::println);
12+
13+
System.out.println("Sorting with a lamba expression for the comparison");
14+
List<String> l2 = createList();
15+
l2.sort((s1, s2) -> s1.compareToIgnoreCase(s2)); // sort ignoring case
16+
l2.forEach(System.out::println);
17+
18+
System.out.println("Sorting with a method references");
19+
List<String> l3 = createList();
20+
l3.sort(String::compareToIgnoreCase);
21+
l3.forEach(System.out::println);
22+
23+
}
24+
25+
private static List<String> createList() {
26+
List<String> list = new ArrayList<>();
27+
list.add("iPhone");
28+
list.add("Ubuntu");
29+
list.add("Android");
30+
list.add("Mac OS X");
31+
return list;
32+
}
33+
34+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
package com.vogella.java.collections.list;
2+
3+
import java.util.ArrayList;
4+
import java.util.List;
5+
6+
public class RemoveIfList {
7+
public static void main(String[] args) {
8+
System.out.println("Demonstration of removeIf");
9+
List<String> l1 = createList();
10+
// remove all items which contains an "x"
11+
l1.removeIf(s-> s.toLowerCase().contains("x"));
12+
l1.forEach(s->System.out.println(s));
13+
14+
15+
}
16+
17+
private static List<String> createList() {
18+
List<String> list = new ArrayList<>();
19+
list.add("iPhone");
20+
list.add("Ubuntu");
21+
list.add("Android");
22+
list.add("Mac OS X");
23+
return list;
24+
}
25+
26+
}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<classpath>
33
<classpathentry kind="src" path="src"/>
4-
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
4+
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
55
<classpathentry kind="output" path="bin"/>
66
</classpath>
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
eclipse.preferences.version=1
22
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
3-
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
3+
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
44
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
5-
org.eclipse.jdt.core.compiler.compliance=1.7
5+
org.eclipse.jdt.core.compiler.compliance=1.8
66
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
77
org.eclipse.jdt.core.compiler.debug.localVariable=generate
88
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
99
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
1010
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
11-
org.eclipse.jdt.core.compiler.source=1.7
11+
org.eclipse.jdt.core.compiler.source=1.8
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
package com.vogella.java.collections.map;
2+
3+
import java.util.HashMap;
4+
import java.util.Map;
5+
6+
public class ComputeIfAbsent {
7+
public static void main(String[] args) {
8+
9+
Map<String,Integer> map = createMap();
10+
11+
Integer calculatedVaue = map.computeIfAbsent("Java", it -> 0);
12+
System.out.println(calculatedVaue);
13+
14+
// write to command line
15+
map.keySet().forEach(
16+
key -> System.out.println(key + " " + map.get(key)));
17+
}
18+
19+
private static Map<String, Integer> createMap() {
20+
Map<String, Integer> map = new HashMap<>();
21+
map.put("Eclipse IDE", 0);
22+
map.put("Eclipse RCP", 0);
23+
map.put("Git", 0);
24+
map.put("Groovy", 0);
25+
return map;
26+
}
27+
}
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
package com.vogella.java.collections.map;
2+
3+
import java.util.HashMap;
4+
import java.util.Map;
5+
6+
public class MapOrDefault {
7+
public static void main(String[] args) {
8+
9+
Map<String,Integer> map = createMap();
10+
map.put("Android", 1 + map.getOrDefault("Android", 0));
11+
12+
// write to command line
13+
map.forEach((k, v) -> System.out.printf("%s %s%n", k, v));
14+
}
15+
16+
private static Map<String, Integer> createMap() {
17+
Map<String, Integer> map = new HashMap<>();
18+
map.put("Eclipse IDE", 0);
19+
map.put("Eclipse RCP", 0);
20+
map.put("Git", 0);
21+
return map;
22+
}
23+
}

com.vogella.java.collections.map/src/com/vogella/java/collections/map/MapTester.java

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,18 +12,14 @@ public static void main(String[] args) {
1212
fillData(map);
1313

1414
// write to command line
15-
for (String key : map.keySet()) {
16-
System.out.println(key + " " + map.get(key));
17-
}
15+
map.forEach((k, v) -> System.out.printf("%s %s%n", k, v));
1816

1917
// add and remove from the map
2018
map.put("iPhone", "Created by Apple");
2119
map.remove("Android");
2220

2321
// write again to command line
24-
for (String key : map.keySet()) {
25-
System.out.println(key + " " + map.get(key));
26-
}
22+
map.forEach((k, v) -> System.out.printf("%s %s%n", k, v));
2723

2824
}
2925

0 commit comments

Comments
 (0)