我有一个矩阵,即数组的数组。我想添加一些方法来更好地处理它,作为Array
的扩展。我在考虑编写类似于以下内容的代码:
extension Array where Element == Array {
// my methods
}
但是,这段代码无法编译,因为我添加了递归定义。显然,我可以省略where Element == Array
部分,但这样看起来更好,只有在适当的情况下显示这些方法。是否有其他方法可以实现这一点?
编辑: 根据@Leo Dabus的建议,我将提供一些用例:
我有一个应用程序,其中有多个表视图控制器。在它们每个人中,我都有部分和行。为了填充它们,我使用两个数组:一个用于部分名称,另一个是对象(或结构)数组的数组 ->对应的部分和行位于索引路径中。因此,我想编写操作数组的方法,这些方法基于索引路径进行操作。例如:
a[indexPath] = sender
这些对象各不相同,有些是简单的字符串,有些则更加复杂。