diff options
Diffstat (limited to 'src/Q8/Candidate.java')
| -rw-r--r-- | src/Q8/Candidate.java | 147 |
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); - } -} |
