C# 我可以使用方括号从类中提取值吗
我有一个类,它有一个变量“Magic”。这是一个4字符的字符串。我可以用C#做这样的事吗 *假设“chunkList”是“chunk”对象的IList/列表。是的,您可以在类上创建:C# 我可以使用方括号从类中提取值吗,c#,C#,我有一个类,它有一个变量“Magic”。这是一个4字符的字符串。我可以用C#做这样的事吗 *假设“chunkList”是“chunk”对象的IList/列表。是的,您可以在类上创建: public string this[string s] { get { // retrieve value } set { // set value } } 您可以使用以下内容: string offset = chunkList.
public string this[string s]
{
get
{
// retrieve value
}
set
{
// set value
}
}
您可以使用以下内容:
string offset = chunkList.Find(x => x.Magic == "_blf").offset;
最好是检查Find retuns是否为null:
Chunk chunk = chunkList.Find(x => x.Magic == "_blf");
if (chunk != null)
offset = chunk.offset;
但这就需要创建List的子类,并将indexer属性添加到子类中……好吧,他们可以在
Magic
类中实现它,并委托给chunkList。这就更好了。非常非常感谢。
Chunk chunk = chunkList.Find(x => x.Magic == "_blf");
if (chunk != null)
offset = chunk.offset;