更新代码
我正试图找出一种方法来计算一个值出现在ArrayList中的频率。
System.out.println("Hand 1, Number of Clubs: "
+ hands[0].frequency(hands[0], Card.Suit.CLUBS));
因此,在上述情况下,我想计算手中有多少“俱乐部”[0]。
public int frequency(Hand c, Suit suit){
int count = 0;
if(suit == suit) //need this to be "If suit (club) is present, count++)
{
count++;
}
return count;
}
我正在绘制一个空白....如果我将方法类型更改为ArrayList,那么我无法返回“count”
hands [0]由:
创建 Hand[] hands = new Hand[4];
for(int i=0; i<hands.length; i++) {
hands[i]=new Hand();
}
for(int i=0; i<=Deck.size()+8; i++) {
for(Hand hand:hands) {
hand.addSingleCard(Deck.deal());
}
}
答案 0 :(得分:3)
Collections.frequency
Collections
方法已在frequency
课程中提供此功能。
public static int frequency(Collection<?> c, Object o)
这将返回collection内特定对象的出现次数。
请注意,如果没有提供vaild equals
方法,这将无法工作,或者至少无法满足您的平等,因为Java不知道您的平等含义。