From 9b634b850777e7ba218b7b364a6fd9e02560663f Mon Sep 17 00:00:00 2001 From: runxinghuan Date: Fri, 23 Feb 2024 17:15:47 +0800 Subject: [PATCH 1/5] Consume new method in main --- src/main/java/se/edu/streamdemo/Main.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/se/edu/streamdemo/Main.java b/src/main/java/se/edu/streamdemo/Main.java index 5d55a74..79ccddc 100644 --- a/src/main/java/se/edu/streamdemo/Main.java +++ b/src/main/java/se/edu/streamdemo/Main.java @@ -14,11 +14,12 @@ public static void main(String[] args) { System.out.println("Printing all data ..."); printAllData(tasksData); - + printAllDataUsingStreams(tasksData); System.out.println("Printing deadlines ..."); printDeadlines(tasksData); + printDeadlinesUsingStreams(tasksData); - System.out.println("Total number of deadlines: " + countDeadlines(tasksData)); + System.out.println("Total number of deadlines: " + countDeadlinesUsingStream(tasksData)); } From 745182e3def25f168204a17ed7440f646339ca0a Mon Sep 17 00:00:00 2001 From: runxinghuan Date: Fri, 23 Feb 2024 17:16:29 +0800 Subject: [PATCH 2/5] Add notification message --- src/main/java/se/edu/streamdemo/Main.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/se/edu/streamdemo/Main.java b/src/main/java/se/edu/streamdemo/Main.java index 79ccddc..c1aaa74 100644 --- a/src/main/java/se/edu/streamdemo/Main.java +++ b/src/main/java/se/edu/streamdemo/Main.java @@ -34,6 +34,7 @@ private static int countDeadlines(ArrayList tasksData) { } public static void printAllData(ArrayList tasksData) { + for (Task t : tasksData) { System.out.println(t); } From a9760d9f0f64064965591f38eb23632c08c9c824 Mon Sep 17 00:00:00 2001 From: runxinghuan Date: Fri, 23 Feb 2024 17:17:31 +0800 Subject: [PATCH 3/5] Implement print data using streams --- src/main/java/se/edu/streamdemo/Main.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/main/java/se/edu/streamdemo/Main.java b/src/main/java/se/edu/streamdemo/Main.java index c1aaa74..baf1af6 100644 --- a/src/main/java/se/edu/streamdemo/Main.java +++ b/src/main/java/se/edu/streamdemo/Main.java @@ -40,6 +40,12 @@ public static void printAllData(ArrayList tasksData) { } } + public static void printAllDataUsingStreams(ArrayList tasks) { + System.out.println(); + + tasks.stream() + .forEach(System.out::println); + } public static void printDeadlines(ArrayList tasksData) { for (Task t : tasksData) { if (t instanceof Deadline) { From 862d88899472d235f59e539645611d674ca3499b Mon Sep 17 00:00:00 2001 From: runxinghuan Date: Fri, 23 Feb 2024 17:17:50 +0800 Subject: [PATCH 4/5] Implement streams in the code --- W7.iml | 11 +++++++++++ src/main/java/se/edu/streamdemo/Main.java | 11 +++++++++++ 2 files changed, 22 insertions(+) create mode 100644 W7.iml diff --git a/W7.iml b/W7.iml new file mode 100644 index 0000000..f76df2b --- /dev/null +++ b/W7.iml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/java/se/edu/streamdemo/Main.java b/src/main/java/se/edu/streamdemo/Main.java index baf1af6..88e4b8c 100644 --- a/src/main/java/se/edu/streamdemo/Main.java +++ b/src/main/java/se/edu/streamdemo/Main.java @@ -33,6 +33,12 @@ private static int countDeadlines(ArrayList tasksData) { return count; } + private static int countDeadlinesUsingStream(ArrayList tasksData) { + int count = (int) tasksData.stream() + .filter((t) -> t instanceof Deadline) + .count(); + return count; + } public static void printAllData(ArrayList tasksData) { for (Task t : tasksData) { @@ -54,4 +60,9 @@ public static void printDeadlines(ArrayList tasksData) { } } + public static void printDeadlinesUsingStreams(ArrayList tasksData) { + tasksData.stream() + .filter((t) -> t instanceof Deadline) + .forEach(System.out::println); + } } From afd87263d965c62ce456efa303ace24eca4d48d4 Mon Sep 17 00:00:00 2001 From: runxinghuan Date: Fri, 23 Feb 2024 17:39:32 +0800 Subject: [PATCH 5/5] jncfjas --- src/W7.iml | 11 +++++++++++ src/main/java/se/edu/streamdemo/Main.java | 9 +++++++++ 2 files changed, 20 insertions(+) create mode 100644 src/W7.iml diff --git a/src/W7.iml b/src/W7.iml new file mode 100644 index 0000000..5b22c51 --- /dev/null +++ b/src/W7.iml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/java/se/edu/streamdemo/Main.java b/src/main/java/se/edu/streamdemo/Main.java index 5d55a74..cf15554 100644 --- a/src/main/java/se/edu/streamdemo/Main.java +++ b/src/main/java/se/edu/streamdemo/Main.java @@ -17,6 +17,7 @@ public static void main(String[] args) { System.out.println("Printing deadlines ..."); printDeadlines(tasksData); + printDeadlinesUsingStreams(tasksData); System.out.println("Total number of deadlines: " + countDeadlines(tasksData)); @@ -46,4 +47,12 @@ public static void printDeadlines(ArrayList tasksData) { } } + public static void printDeadlinesUsingStreams(ArrayList tasksData) { + tasksData.stream() + .fliter((t) -> t instanceof deadline) + .sorted((t1, t2) -> t1.getDescription.compareToIgnoreCase(t2.getDescription)) + .forEach(System.out::println); + } + + }