如果没有列表项,则返回空List <T>或null?

Nei*_*ir0 7 c#

当我有一个返回对象集合的方法时,如果对象计数为零,我应该返回什么?null还是空的List<T>?什么是好习惯?

public List<string> GetPupilsByClass(string className)
{
     ....
}
Run Code Online (Sandbox Code Playgroud)

Bol*_*ock 15

我肯定会返回一个空列表,因此仍然可以在对象上调用方法而无需进行空检查.返回空列表并且根本不返回任何内容之间存在差异,因此调用代码可能不会期望接收空引用(除非发生异常或其他事情).