diff --git a/src/se/edu/inclass/Main.java b/src/se/edu/inclass/Main.java index 3781393..dac59d7 100644 --- a/src/se/edu/inclass/Main.java +++ b/src/se/edu/inclass/Main.java @@ -21,6 +21,11 @@ public static void main(String[] args) { System.out.println("Total number of deadlines: " + countDeadlines(tasksData)); + printDeadlinesUsingStreams(tasksData); + + for(Task t: filterByString(tasksData,"11")){ + System.out.println(t); + } } private static int countDeadlines(ArrayList tasksData) { @@ -46,4 +51,19 @@ public static void printDeadlines(ArrayList tasksData) { } } } + + public static void printDeadlinesUsingStreams(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 = (ArrayList) tasksData.stream() + .filter((s) -> s.getDescription().contains(filterString)) + .collect(Collectors.toList()); + + return filteredTaskList; + } }