java - 我的返回类型应该是正确的,但 Intelli-J 说它是错误的?需要 ArrayList<ArrayList<Card>>,已找到 boolean 值

标签 java oop intellij-idea arraylist return-type

我正在编写(本质上)一个 N 选择 R 方法,该方法应该返回可能组合的列表。 Intelli-J 告诉我,我添加 ArrayList 的 ArrayList 表示它在第一个 if 语句中返回 boolean 类型。在接下来的几句话中,我正在做同样的事情,但它并没有表明我在那里有任何错误。这是我的代码(我的递归现在可能是错误的,但在修复此错误之前我无法测试我的方法):

private ArrayList<ArrayList<Card>> choose(ArrayList<Card> from, int howMany)
{
    ArrayList<ArrayList<Card>> toReturn = new ArrayList<ArrayList<Card>>();
    if (from.size() == howMany)
    {
        return toReturn.add(from);
    }
    else if (howMany == 1)
    {
        for (int i = 0; i < from.size() -1; i++)
        {
            ArrayList<Card> oneCardList = new ArrayList<Card>();
            Card card = from.get(i);
            oneCardList.add(card);
            toReturn.add(oneCardList);
        }
        return toReturn;
    }
    for (Card card : from) {
        Card first = card;
        ArrayList<Card> theRest = new ArrayList<Card>(from.subList(1, from.size() - 1));
        toReturn.add(theRest);
        ArrayList<ArrayList<Card>> chooseRest = choose(theRest, howMany);
    }
    return toReturn;
}

最佳答案

您返回的 toReturn.add(from); 返回的是 boolean 值,而不是列表。
我想你应该这样做:

toReturn.add(from);
return toReturn;

关于java - 我的返回类型应该是正确的,但 Intelli-J 说它是错误的?需要 ArrayList<ArrayList<Card>>,已找到 boolean 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58847190/

相关文章:

java - 重定向时向 Zuul 添加 header

javascript - 有条件地向 JavaScript 对象添加属性

intellij-idea - 只需按一下按钮即可在 IntelliJ 中运行多个应用程序吗?

java - 如何在intellij中使用java repl插件?

svn: E175005: 路径已经存在

java - 如何将数组索引添加到 JAXB 生成的 XML?

java - 无法使 Keycloak Tomcat 7 适配器​​工作(版本 3.4.3.Final)

c++ - 类定义中的条件

c# - 如果 child 没有 parent 就不能存在,那么 child 的 parent 引用是否合理?

java - 伽罗瓦/计数器模式 (GCM/NoPadding) 未使用