gpt4 book ai didi

java - 如何计算列表中自定义数据类型的值?

转载 作者:行者123 更新时间:2023-12-01 20:52:22 25 4
gpt4 key购买 nike

我已经了解了一些关于 hashMap 的内容,但是我们的工作还没有进展到这一步。请尽可能简单地提供您的答案和有用的建议。

我有一个已经制作好的自定义数据类型,它可以完美地工作,称为“颜色”。该类型的唯一值是 Color.BLUE、Color.RED、Color.YELLOW 和 Color.GREEN。

我的任务是如果列表中的 Color.BLUE 多于其他颜色,则返回 Color.BLUE;如果列表中的 Color.RED 多于其他颜色,则返回 Color.RED,对于 Color.GREEN 也是如此和颜色.黄色。

我研究并提出了这段代码:

public Color callColor(List<Card> hand) {

int blueCards = Collections.frequency(hand, Color.BLUE);
int redCards = Collections.frequency(hand, Color.RED);
int greenCards = Collections.frequency(hand, Color.GREEN);
int yellowCards = Collections.frequency(hand, Color.YELLOW);
Color changeColorTo = Color.NONE;

if ((blueCards > redCards) || (blueCards > greenCards) || (blueCards > yellowCards)) {
changeColorTo = Color.BLUE;
}

if ((redCards > blueCards) || (redCards > greenCards) || (redCards > yellowCards)) {
changeColorTo = Color.RED;
}

if ((greenCards > redCards) || (greenCards > blueCards) || (greenCards > yellowCards)) {
changeColorTo = Color.GREEN;
}

if ((yellowCards > redCards) || (yellowCards > greenCards) || (yellowCards > blueCards)) {
changeColorTo = Color.YELLOW;
}
return changeColorTo;
}

但是这段代码会导致 blueCards、redCards、greenCards 和 YellowCards 全部为 0,而它们绝对不应该为零。

因此,在这种情况下,我的 Collections 实现根本不起作用。救命!

最佳答案

您正在传递 List<Card>到该方法,但随后您正在搜索某个 Color 的频率在那个列表中。这就是为什么所有计数都等于 0。

关于java - 如何计算列表中自定义数据类型的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43009607/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com