From 875eaa81c79779ca2a7b7e9731b7eb885fb39e79 Mon Sep 17 00:00:00 2001 From: JuZihao <57383789+JuZihao@users.noreply.github.com> Date: Fri, 18 Sep 2020 17:52:28 +0800 Subject: [PATCH] Added filterByString --- src/se/edu/inclass/Main.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/se/edu/inclass/Main.java b/src/se/edu/inclass/Main.java index 3781393..6ad291c 100644 --- a/src/se/edu/inclass/Main.java +++ b/src/se/edu/inclass/Main.java @@ -8,6 +8,8 @@ import java.util.ArrayList; import java.util.stream.Collectors; +import static java.util.stream.Collectors.toList; + public class Main { private TaskNameComparator taskNameComparator; @@ -21,6 +23,8 @@ public static void main(String[] args) { System.out.println("Total number of deadlines: " + countDeadlines(tasksData)); + printDeadlineUsingStreams(tasksData); + System.out.println(filterByString(tasksData)); } private static int countDeadlines(ArrayList tasksData) { @@ -46,4 +50,18 @@ public static void printDeadlines(ArrayList tasksData) { } } } + + public static void printDeadlineUsingStreams(ArrayList tasksData) { + tasksData.stream() + .filter((s)-> s instanceof Deadline) + .sorted((a, b) -> a.getDescription().toLowerCase().compareTo(b.getDescription().toLowerCase())) + .forEach(System.out::println); + } + + public static ArrayList filterByString(ArrayList tasksData,String filterString) { + ArrayList filteredTaskList = tasksData.stream() + .filter((s) -> s.getDescription().contains(filterString)) + .collect(toList()); + return filteredTaskList; + } }