C# 接口可以实现列表或数组吗?如果是这样,如何?

Can C# interfaces implement lists or arrays? If so, how?

我正在翻译一堆打字稿 类 和 C# 接口(对于那些想知道为什么的 javascript 互操作)

一个我不确定如何从打字稿翻译的例子是这样的:

interface CellArray extends Array<Cell> {
    addClass(className: string): CellArray;
    removeClass(className: string): CellArray;
    html(html: string): CellArray;
    invalidate(): CellArray;
}

如果我没看错的话,该接口正在扩展单元格数组的类型...同时还有一些 return 方法。

有没有办法将其转换为 C#?

谢谢!

C# 接口不能直接继承自列表(因为它们是 classes)- 但它们可以继承自任何接口,例如 IListIEnumerable:

数组是一个 class,它继承自 IListIEnumerable。所以你可以继承自 IList<T>

    public interface Test<T> : IList<T>
    {
        // code here
    }

或者您可以继承自 IEnumerable:

    public interface Test<T> : IEnumerable<T>
    {
        // code here
    }