如何将索引器应用于 Dictionary.Values (C# 3.0)

发布于 2024-09-04 02:27:54 字数 625 浏览 7 评论 0 原文

我已经编写了一个程序,

string[] arrExposureValues = stock.ExposureCollection[dt].Values.ToArray();
for(int i = 0; i < arrExposureValues.Length; i++)
    Console.WriteLine(arrExposureValues[i]);

没有任何错误并且工作正常。

但这是否可以做类似下面的事情

for(int i = 0; i < stock.ExposureCollection[dt].Count; i++)    
    Console.WriteLine(stock.ExposureCollection[dt].Values[i]);

这只是为了我的知识(基本上试图在一行中完成相同的任务)。

注意:ExposureCollection 是 Dictionary>

首先我怀疑它是否可能!

我正在使用 C# 3.0。

谢谢。

I have done a program

string[] arrExposureValues = stock.ExposureCollection[dt].Values.ToArray();
for(int i = 0; i < arrExposureValues.Length; i++)
    Console.WriteLine(arrExposureValues[i]);

Nothing wrong and works fine.

But is it possible to do something like the below

for(int i = 0; i < stock.ExposureCollection[dt].Count; i++)    
    Console.WriteLine(stock.ExposureCollection[dt].Values[i]);

This is just for my sake of knowledge (Basically trying to accomplish the same in one line).

Note: ExposureCollection is Dictionary<DateTime, Dictionary<string, string>>

First of all I have the doubt if it is at all possible!

I am using C# 3.0.

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

泼猴你往哪里跑 2024-09-11 02:27:54

首先,你的任务是什么?同时枚举字典和枚举内部字典?

foreach(var item in dic)
{
    foreach(var inner in item.Value)
    {
        Console.WriteLine("key={0}, inner key={1}, inner value={2}",
            item.Key, inner.Key, inner.Value);
    }
}

First of all, what is you task? Enumerate dictionary and enumerate inner dictionary in the same time?

foreach(var item in dic)
{
    foreach(var inner in item.Value)
    {
        Console.WriteLine("key={0}, inner key={1}, inner value={2}",
            item.Key, inner.Key, inner.Value);
    }
}
冰雪梦之恋 2024-09-11 02:27:54

您可以使用 foreach 枚举 stock.ExposureCollection[dt].Keys 列表。

foreach( string key in stock.ExposureCollection[dt].Keys ) {
  Console.WriteLine(stock.ExposureCollection[dt][key]);
}

You could enumerate over the stock.ExposureCollection[dt].Keys list using a foreach.

foreach( string key in stock.ExposureCollection[dt].Keys ) {
  Console.WriteLine(stock.ExposureCollection[dt][key]);
}
留蓝 2024-09-11 02:27:54
for(int i = 0; i < stock.ExposureCollection[dt].Count; i++)     
    Console.WriteLine(stock.ExposureCollection[dt].Values.ElementAt(i)); 
for(int i = 0; i < stock.ExposureCollection[dt].Count; i++)     
    Console.WriteLine(stock.ExposureCollection[dt].Values.ElementAt(i)); 
惯饮孤独 2024-09-11 02:27:54

尝试 SortedList - 它具有可以索引的值和键等属性。

Try SortedList - it has properties like Values and Keys which you can index.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文