package exercise_3; public class Card { private String suit; private String value; public Card() {} public Card(String n) { if(n.length() > 3) if (!Character.isDigit(n.charAt(1))) n = n.substring(0, 2); else n = n.substring(0, 3); this.readValue(n); this.readSuit(n); } private void readValue(String n) { //finds number of card (if is number) or letter (if is letter) if (Character.isDigit(n.charAt(0))) { if (Character.isDigit(n.charAt(1)) && Integer.parseInt(n.substring(0, 2)) == 10) value = n.substring(0, 2); else if (Integer.parseInt(n.substring(0, 1)) >= 2 && Integer.parseInt(n.substring(0, 1)) <= 9) value = n.substring(0, 1); else value = "unknown"; } else { switch (Character.toUpperCase(n.charAt(0))) { case 'J': value = "Jack"; break; case 'Q': value = "Queen"; break; case 'K': value = "King"; break; case 'A': value = "Ace"; break; default: value = "unknown"; }// end switch }// end else }// end readValue private void readSuit(String n) { switch (Character.toUpperCase(n.charAt(n.length() - 1)))//reads the last character of the input { case 'D': suit = "Diamond"; break; case 'H': suit = "Heart"; break; case 'S': suit = "Spade"; break; case 'C': suit = "Club"; break; default: suit = "unknown"; } } public String toString() { return value + " of " + suit + "s"; } }