c#我如何返回通用列表?

l--*_*''' -1 c#

List<decimal> FindSumSubset(decimal sum, List<decimal> list)
        {
           for (int i = 0; i < list.Count; i++)
           {
              decimal value = list[i];
              if (sum - value == 0.0m)
              {
                  return new List<decimal> { value };
              }
              else
              {
                  var subset = FindSumSubset(sum - value, list.GetRange(i + 1, list.Count -i));
                  if (subset != null)
                  {
                      return subset.Add(value);


                  }
              }
           }
           return null;
        }
Run Code Online (Sandbox Code Playgroud)

我在这一行上收到错误:

 return subset.Add(value);
Run Code Online (Sandbox Code Playgroud)

错误:

Error   1   Cannot implicitly convert type 'void' to 'System.Collections.Generic.List<decimal>'
Run Code Online (Sandbox Code Playgroud)

有谁知道我怎么解决这个>?

Cod*_*aos 5

subset.Add(value);
return subset;
Run Code Online (Sandbox Code Playgroud)

您的问题与通用列表无关.该Add方法仅更改列表,但确实返回void /不返回任何内容.因此,您需要使返回成为单独的语句,并且不能链接方法调用.