summaryrefslogtreecommitdiff
path: root/src/Q3/CreditCard.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/Q3/CreditCard.java')
-rw-r--r--src/Q3/CreditCard.java29
1 files changed, 25 insertions, 4 deletions
diff --git a/src/Q3/CreditCard.java b/src/Q3/CreditCard.java
index a71b0fa..e82eb6c 100644
--- a/src/Q3/CreditCard.java
+++ b/src/Q3/CreditCard.java
@@ -9,7 +9,25 @@ public class CreditCard {
private String ccNumber;
private String company;
- public CreditCard(String num) {}
+ public CreditCard(String num) {
+ this.ccNumber = num;
+ if (validateCompany()) {
+ switch (num.charAt(0)) {
+ case '3':
+ this.company = "American Express";
+ break;
+ case '4':
+ this.company = "Visa";
+ break;
+ case '5':
+ this.company = "MasterCard";
+ break;
+ case '6':
+ this.company = "Discover";
+ break;
+ }
+ }
+ }
public int getEvenSum() {
return evenSum;
@@ -31,16 +49,19 @@ public class CreditCard {
return this.company;
}
- public boolean isDivisibleBy10() {
+ public boolean isValid() {
return false;
}
- public boolean isValid() {
+ public boolean isDivisibleBy10() {
return false;
}
public boolean validateCompany() {
- return false;
+ return this.ccNumber.startsWith("4")
+ || this.ccNumber.startsWith("5")
+ || this.ccNumber.startsWith("37")
+ || this.ccNumber.startsWith("6");
}
public boolean validateLength() {