gpt4 book ai didi

c# - 通用列表/字典

转载 作者:太空狗 更新时间:2023-10-29 23:27:59 25 4
gpt4 key购买 nike

我正在尝试通过反射输出对象图。其中有几种通用类型(列表、字典)。我不知道它们包含的类型(字符串、对象等),但想列出它们(使用 .ToString())。

那么,有没有办法以通用方式输出通用列表/字典,这意味着无需为每个键 <-> 值组合编写重载函数?

我认为 .NET 4.0 是可能的,但目前还没有..

最佳答案

如果您使用反射,泛型会变得非常棘手。你能简单地使用非通用接口(interface)吗? IDictionary/IList?这将是一个很多更容易......就像:

static void Write(object obj) {
if (obj == null) { }
else if (obj is IDictionary) { Write((IDictionary)obj); }
else if (obj is IList) { Write((IList)obj); }
else { Console.WriteLine(obj); }
}
static void Write(IList data) {
foreach (object obj in data) {
Console.WriteLine(obj);
}
}
static void Write(IDictionary data) {
foreach (DictionaryEntry entry in data) {
Console.WriteLine(entry.Key + "=" + entry.Value);
}
}

关于c# - 通用列表/字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/759525/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com