void main() {
var deck = new Deck();
deck.shuffle();
print(deck.cardsWithSuits('DIAMONDS'));
}
class Deck {
List<Card> cards = [];
Deck() {
var ranks = ['ACE', 'TWO', 'THREE', 'FOUR', 'FIVE'];
var suits = ['DIAMONDS', 'HEARTS', 'CLUBS', 'SPADES'];
for (var rank in ranks) {
for (var suit in suits) {
// print("rank: $rank & suit: $suit");
var card = new Card(rank, suit);
cards.add(card);
}
}
}
toString() {
return cards.toString();
}
shuffle(){
cards.shuffle();
}
cardsWithSuits(String suit){
return cards.where((card){
return card.suit == suit;
});
}
}
class Card{
String rank;
String suit;
Card(this.rank, this.suit);
toString(){
return "$rank of $suit";
}
}
=======================
IF WE HAVE SINGLE LINE EXPRESSION, WE CAN WRITE LIKE THIS-
cardsWithSuits(String suit){
return cards.where((card) => card.suit == suit );
}
=======================
No comments:
Post a Comment