Return 来自一副扑克牌的流
Return a Stream from a deck of playing cards
我们考虑以下格式的一副扑克牌:
Ranks: 2, 3, 4, 5, 6, 7, 8, 9, T, J, Q, K, A
Suits: S - Spade, D - Diamond, H - Heart, C - Club
每张卡片将由 2 个字符标识
例如。 “3S”(黑桃 3)、“TC”(梅花 10)、“AH”(红心 A)。我想修改 getCardsBySuit
方法,以便 return 具有属于该花色的所有牌的 Stream
。
例如对于包含“2H”、“3S”、“TH”且花色为 'H' 的列表,结果应为包含 “2H”和“TH”的流
public static Stream<String> getCardsBySuit(List<String> cards, char suit) {
return null;
}
假设卡片中的所有元素至少有 2 个字符并且花色在第二位。
return cards.stream()
.filter(s -> s.charAt(1) == suit);
请注意,在使用返回的流时,一旦您应用了任何终端操作,您将无法再次使用相同的流对象。您将不得不再次调用此方法。
我们考虑以下格式的一副扑克牌:
Ranks: 2, 3, 4, 5, 6, 7, 8, 9, T, J, Q, K, A
Suits: S - Spade, D - Diamond, H - Heart, C - Club
每张卡片将由 2 个字符标识
例如。 “3S”(黑桃 3)、“TC”(梅花 10)、“AH”(红心 A)。我想修改 getCardsBySuit
方法,以便 return 具有属于该花色的所有牌的 Stream
。
例如对于包含“2H”、“3S”、“TH”且花色为 'H' 的列表,结果应为包含 “2H”和“TH”的流
public static Stream<String> getCardsBySuit(List<String> cards, char suit) {
return null;
}
假设卡片中的所有元素至少有 2 个字符并且花色在第二位。
return cards.stream()
.filter(s -> s.charAt(1) == suit);
请注意,在使用返回的流时,一旦您应用了任何终端操作,您将无法再次使用相同的流对象。您将不得不再次调用此方法。