summaryrefslogtreecommitdiff
path: root/src/Q8/Candidate.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/Q8/Candidate.java')
-rw-r--r--src/Q8/Candidate.java147
1 files changed, 0 insertions, 147 deletions
diff --git a/src/Q8/Candidate.java b/src/Q8/Candidate.java
deleted file mode 100644
index 2024267..0000000
--- a/src/Q8/Candidate.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/**
- * Assignment 1, COMP268 Class: Candidate.java
- *
- * @description Represents a candidate
- * @author: mo khan Student ID: 3431709
- * @date May 8, 2019
- * @version 1.0
- */
-package Q8;
-
-import Q1.*;
-import java.util.ArrayList;
-import java.util.Scanner;
-
-public class Candidate extends AddressBook {
- private double grade = 0.0;
- private Communication communication;
- private boolean isInnovative;
- private double regulatoryCapability;
-
- /**
- * Constructs a Candidate object.
- *
- * @param firstName the first name of the runner
- * @param lastName the last name of the runner
- * @param grade the grade for the candidate
- * @param communication the level of communication
- * @param isInnovative specifies if the candidate is innovative.
- * @param regulatoryCapability specifies the candidates level of regulatory capability
- */
- public Candidate(
- String firstName,
- String lastName,
- double grade,
- String communication,
- boolean isInnovative,
- double regulatoryCapability) {
- super(firstName, "", lastName);
- this.grade = grade;
- this.setCommunication(communication);
- this.isInnovative = isInnovative;
- this.regulatoryCapability = regulatoryCapability;
- }
-
- /** @return the candidates innovativeness. */
- public boolean isInnovative() {
- return this.isInnovative;
- }
-
- /** @return the candidates grade. */
- public double getGrade() {
- return this.grade;
- }
-
- /** @return the candidates regulatory capability */
- public double getRegulation() {
- return this.regulatoryCapability;
- }
-
- /** @return the candidates communication ability */
- public String getCommunication() {
- return this.communication.toString();
- }
-
- /**
- * Sets the candidate communication level.
- *
- * @param communication the candidates communication ability
- */
- public void setCommunication(String communication) {
- this.communication = Communication.findBy(communication);
- }
-
- /**
- * Sets the candidate grade level.
- *
- * @param grade the candidates grade
- */
- public void setGrade(double grade) {
- this.grade = grade;
- }
-
- /**
- * Sets the candidate innovation level.
- *
- * @param innovation the candidates innovation ability
- */
- public void setInnovation(boolean innovation) {
- this.isInnovative = innovation;
- }
-
- /**
- * Sets the candidate regulatory capability level.
- *
- * @param regulatoryCapability the candidates regulatory capability
- */
- public void setRegulation(double regulatoryCapability) {
- this.regulatoryCapability = regulatoryCapability;
- }
-
- /** @return true if the candidate is eligible for a position at the company. */
- public boolean isEligible() {
- if (this.grade >= 85.0) {
- return this.communication.isAtLeast(Communication.Average) || this.isInnovative();
- } else {
- return (this.regulatoryCapability >= 0.5
- && this.communication.isAtLeast(Communication.Average));
- }
- }
-
- /**
- * @param candidates the list of candidates to check for qualifications
- * @return a list of candidates that are eligible for employment at the company.
- */
- public static ArrayList<Candidate> getEligibleCandidates(Candidate[] candidates) {
- ArrayList<Candidate> eligible = new ArrayList<Candidate>();
-
- for (Candidate candidate : candidates) if (candidate.isEligible()) eligible.add(candidate);
-
- return eligible;
- }
-
- public static void main(String[] args) {
- Scanner in = new Scanner(System.in);
-
- Candidate[] candidates = {
- new Candidate("Elena", "Brandon", 82.30, "poor", true, 0.5),
- new Candidate("Thomas", "Molson", 85.10, "poor", false, 1.0),
- new Candidate("Hamilton", "Winn", 77.77, "average", false, 0.8),
- new Candidate("Suzie", "Sarandin", 69.93, "average", false, 0.0),
- new Candidate("Philip", "Winne", 93.03, "average", true, 1.0),
- new Candidate("Alex", "Trebok", 88.61, "poor", true, 0.7),
- new Candidate("Emma", "Pivoto", 55.99, "excellent", false, 0.8),
- new Candidate("John", "Lenthen", 87.49, "excellent", true, 0.9),
- new Candidate("James", "Lean", 88.00, "excellent", false, 0.5),
- new Candidate("Jane", "Ostin", 91.20, "average", true, 0.6),
- new Candidate("Emily", "Car", 66.79, "excellent", false, 0.3),
- new Candidate("Daniel", "Hamshire", 76.65, "average", true, 0.2),
- new Candidate("Neda", "Bazdar", 55.89, "excellent", true, 0.5),
- new Candidate("Aaron", "Smith", 90.01, "excellent", false, 0.3),
- new Candidate("Kate", "Hen", 87.9, "poor", false, 0.8)
- };
-
- for (Candidate candidate : Candidate.getEligibleCandidates(candidates))
- System.out.println(candidate);
- }
-}