我认为我只是使用了对我想要的错误描述,这就是为什么我找不到答案,但基本上我想做以下事情:
// Go from this
List<string>[] myvar = new List<string>()[5];
myvar[4].Add("meow");
// To this
LString myvar = new LString();
myvar.Add("meow");
我最初尝试过做一个类public class LString : List<string>()[]
,但这不是真正有效的语法,所以我真的不知道从那里去哪里。
答案 0 :(得分:2)
要从List<string>
派生类,请使用以下语法:
public class LString : List<string>
{
}
无法从数组中进一步派生类。所以你必须满意:
LString[] myvar = new LString[5];
修改强>
根据反馈,你最好做这样的事情来包含你的清单:
public class LString
{
private List<string>[] _lists = new List<string>[5];
public void Add(int index, string value)
{
if (index < 0 || index > 4)
throw new ArgumentOutOfRangeException("index");
_lists[index].Add(value);
}
}
答案 1 :(得分:2)
这是一个封装的方法:
public class LString
{
List<string>[] _strListArray;
public LString(int size)
{
_strListArray = new List<string>[size];
}
public void Add(int index, string str)
{
_strListArray[index].Add(str);
}
public void Remove(int index, string str)
{
_strListArray[index].Remove(str);
}
// insert more code for list manipulation
}
这可能不是最干净的代码,但它不会从List<T>
继承。