From c03d30761e74e27815e6b7639f9ff4ec4e5c185a Mon Sep 17 00:00:00 2001 From: WillemDalton Date: Mon, 29 Sep 2025 18:55:22 -0400 Subject: implemented logic for sorting algorithms --- src/model/course-search/SortByDifficulty.java | 10 ++++++++++ src/model/course-search/SortByHoles.java | 2 +- src/model/course-search/SortByLocation.java | 10 ++++++++++ src/model/course-search/SortByName.java | 10 ++++++++++ src/model/course-search/SortByPar.java | 10 ++++++++++ 5 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 src/model/course-search/SortByDifficulty.java create mode 100644 src/model/course-search/SortByLocation.java create mode 100644 src/model/course-search/SortByName.java create mode 100644 src/model/course-search/SortByPar.java (limited to 'src') diff --git a/src/model/course-search/SortByDifficulty.java b/src/model/course-search/SortByDifficulty.java new file mode 100644 index 0000000..2c3634b --- /dev/null +++ b/src/model/course-search/SortByDifficulty.java @@ -0,0 +1,10 @@ +package design.model; + +import CourseSorter; + +public class SortByDifficulty implements CourseSorter { + sortCourses(List courses) + { + courses.sort(courses, (Course c1, Course c2) -> (c1.getDifficultyRating > c2.getDifficultyRating)); + } +} \ No newline at end of file diff --git a/src/model/course-search/SortByHoles.java b/src/model/course-search/SortByHoles.java index 39e3610..9aa7626 100644 --- a/src/model/course-search/SortByHoles.java +++ b/src/model/course-search/SortByHoles.java @@ -5,6 +5,6 @@ import CourseSorter; public class SortByHoles implements CourseSorter { sortCourses(List courses) { - + courses.sort(courses, (c1, c2) -> (c1.getHoleCount() - c2.getHoleCount())); } } \ No newline at end of file diff --git a/src/model/course-search/SortByLocation.java b/src/model/course-search/SortByLocation.java new file mode 100644 index 0000000..d9e7663 --- /dev/null +++ b/src/model/course-search/SortByLocation.java @@ -0,0 +1,10 @@ +package design.model; + +import CourseSorter; + +public class SortByLocation implements CourseSorter { + sortCourses(List courses) + { + courses.sort(courses, (Course c1, Course c2) -> (c1.getLocation().compareTo(c2.getLocation()))); + } +} \ No newline at end of file diff --git a/src/model/course-search/SortByName.java b/src/model/course-search/SortByName.java new file mode 100644 index 0000000..d899982 --- /dev/null +++ b/src/model/course-search/SortByName.java @@ -0,0 +1,10 @@ +package design.model; + +import CourseSorter; + +public class SortByName implements CourseSorter { + sortCourses(List courses) + { + courses.sort(courses, (Course c1, Course c2) -> (c1.getName().compareTo(c2.getName()))); + } +} \ No newline at end of file diff --git a/src/model/course-search/SortByPar.java b/src/model/course-search/SortByPar.java new file mode 100644 index 0000000..7b782ec --- /dev/null +++ b/src/model/course-search/SortByPar.java @@ -0,0 +1,10 @@ +package design.model; + +import CourseSorter; + +public class SortByPar implements CourseSorter { + sortCourses(List courses) + { + courses.sort(courses, (Course c1, Course c2) -> (c1.getTotalPar() > c2.getTotalPar())); + } +} \ No newline at end of file -- cgit v1.2.3