我正在尝试制作一个家庭不和的游戏,但我想不出有任何办法可以处理重复的答案。我的意思是,游戏得到答案的方式是,如果任何答案包含用户输入的答案。
ArrayList<Answer> containedAnswers = new ArrayList<Answer>();
for (Answer a : question.getAnswers())
{
if (a.getAnswer().toLowerCase().contains(answer.toLowerCase()))
{
containedAnswers.add(a);
}
}
if ((containedAnswers.size() - 1) == containedAnswer)
{
containedAnswer = 0;
containedAnswers.clear();
}
for (Answer a : question.getAnswers())
{
if (foundAnswers.contains(a))
{
continue;
}
Answer ans = a;
if (a.getAnswer().toLowerCase().contains(answer.toLowerCase()))
{
if (!containedAnswers.isEmpty())
{
ans = containedAnswers.get(containedAnswer);
containedAnswer++;
}
但是当不止一个答案包含用户输入的内容时,我不知道如何处理它。例如,一个问题是为“restaurant”命名的另一个词?一些答案是 cafe , diner 和 cafeteria ,所以如果用户输入cafe,那么2个答案包含咖啡馆,咖啡馆和自助餐厅。我尝试使用输入的单词包含的答案的ArrayList,但我不断得到'ArrayIndexOutOfBoundsException'。