package com.bassoli.poker; public class Card { String suit; String value; int valueInt; public Card() { } public Card(String suit, String value) { this.suit = suit; this.value = value; this.valueInt = this.getValueInt(this); } public Card(String card) { this.suit = card.substring(0,1); this.value = card.substring(1,2); this.valueInt = this.getValueInt(this); } public String toString() { return suit + value; } public String getSuit() { return suit; } public String getValue() { return value; } public int getValueInt(Card card) { switch (card.getValue().charAt(0)) { case '2': return 1; case '3': return 2; case '4': return 3; case '5': return 4; case '6': return 5; case '7': return 6; case '8': return 7; case '9': return 8; case 'T': return 9; case 'J': return 10; case 'Q': return 11; case 'K': return 12; case 'A': return 13; } return 0; } public int getValueInt() { return valueInt; } public boolean isGreaterThan(Card card) { if (this.getValueInt() > card.getValueInt()) return true; else return false; } public boolean isGreaterThan_aceProvision(Card card) { if (this.getValueInt()%13 > card.getValueInt()%13) return true; else return false; } public boolean isLessThan(Card card) { if (this.getValueInt() < card.getValueInt()) return true; else return false; } public boolean isSameCard(Card card) { return this.toString().equals(card.toString()); } public boolean isSameValue(Card card) { return this.getValueInt() == card.getValueInt(); } public boolean isSameSuit(Card card) { return this.getSuit().equals(card.getSuit()); } public boolean isNextCardBelow(Card card) { return this.getValueInt() - 1 == card.getValueInt()%13; } public boolean isNextCardAbove(Card card) { return this.getValueInt() + 1 == card.getValueInt(); } public static void main(String args[]) { Card card = new Card("HJ"); Card card2 = new Card("HJ"); System.out.println(card.isGreaterThan(card2)); } public static int getValueInt(String alpha) { switch (alpha.charAt(0)) { case '2': return 1; case '3': return 2; case '4': return 3; case '5': return 4; case '6': return 5; case '7': return 6; case '8': return 7; case '9': return 8; case 'T': return 9; case 'J': return 10; case 'Q': return 11; case 'K': return 12; case 'A': return 13; } return 0; } public static int getValueInt(char alpha) { switch (alpha) { case '2': return 1; case '3': return 2; case '4': return 3; case '5': return 4; case '6': return 5; case '7': return 6; case '8': return 7; case '9': return 8; case 'T': return 9; case 'J': return 10; case 'Q': return 11; case 'K': return 12; case 'A': return 13; } return 0; } public Object clone() { Card newCard = new Card(this.toString()); return newCard; } }