C# Dictionary 的几种遍历方法,排序

Dictionary<string, int> list = new Dictionary<string, int>();

            list.Add("d", 1);

            //3.0以上版本
            foreach (var item in list)
            {
                Console.WriteLine(item.Key + item.Value);
            }
            //KeyValuePair<T,K>
            foreach (KeyValuePair<string, int> kv in list)
            {
                Console.WriteLine(kv.Key + kv.Value);
            }
            //通过键的集合取
            foreach (string key in list.Keys)
            {
                Console.WriteLine(key + list[key]);
            }
            //直接取值
            foreach (int val in list.Values)
            {
                Console.WriteLine(val);
            }
            //非要采用for的方法也可
            List<string> test = new List<string>(list.Keys);

            for (int i = 0; i < list.Count; i++)
            {
                Console.WriteLine(test[i] + list[test[i]]);
            }
 
Dictionary<string, string> dic1Asc = dic1.OrderBy(o => o.Key).ToDictionary(o => o.Key, p => p.Value);
      Dictionary<string, string> dic1desc = dic1.OrderByDescending(o => o.Key).ToDictionary(o => o.Key, p => p.Value);

      Dictionary<string, string> dic1Asc1
        = (from d in dic1
           orderby d.Key ascending
           select d).ToDictionary(k => k.Key, v => v.Value);
      Dictionary<string, string> dic1desc2
        = (from d in dic1
           orderby d.Key descending
           select d).ToDictionary(k => k.Key, v => v.Value);

      List<string> list = new List<string>();
      list.Add("aaa");
      list.Add("ddd");
      list.Add("bbb");
      list.Add("ccc");
      list.Add("bbb");
      var ascList = list.OrderBy(o => o);
      var descList = list.OrderByDescending(o => o);

      var ascList1 = (from l in list
                      orderby l ascending
                      select l).ToList();
      var descList2 = (from l in list
                       orderby l descending
                       select l).ToList();
      string str = "";

C# Dictionary 的几种遍历方法,排序

时间: 2024-11-08 20:55:32

C# Dictionary 的几种遍历方法,排序的相关文章

C# Dictionary 的几种遍历方法

Dictionary<string, int> list = new Dictionary<string, int>(); list.Add("d", 1); //3.0以上版本 foreach (var item in list) { Console.WriteLine(item.Key + item.Value); } //KeyValuePair<T,K> foreach (KeyValuePair<string, int> kv

C# Dictionary 的几种遍历方法 转

Dictionary<string, int> list = new Dictionary<string, int>(); list.Add("d", 1); //3.0以上版本 foreach (var item in list) { Console.WriteLine(item.Key + item.Value); } //KeyValuePair<T,K> foreach (KeyValuePair<string, int> kv

谈谈vector容器的三种遍历方法

说明:本文仅供学习交流,转载请标明出处,欢迎转载! vector容器是最简单的顺序容器,其使用方法类似于数组,实际上vector的底层实现就是采用动态数组.在编写程序的过程中,常常会变量容器中的元素,那么如何遍历这些元素呢?本文给出三种遍历方法. 方法一:采用下标遍历 由于vector容器就是对一个动态数组的包装,所以在vector容器的内部,重载了[]运算符,函数原型为:reference operator [] (size_type n);所以我们可以采用类似于数组的方式来访问vector容

java 完全二叉树的构建与四种遍历方法

本来就是基础知识,不能丢的太干净,今天竟然花了那么长的时间才写出来,记一下. 有如下的一颗完全二叉树: 先序遍历结果应该为:1  2  4  5  3  6  7 中序遍历结果应该为:4  2  5  1  6  3  7 后序遍历结果应该为:4  5  2  6  7  3  1 层序遍历结果应该为:1  2  3  4  5  6  7 二叉树的先序遍历.中序遍历.后序遍历其实都是一样的,都是执行递归操作. 我这记录一下层次遍历吧:层次遍历需要用到队列,先入队在出队,每次出队的元素检查是其是

Jquery中each的三种遍历方法

Jquery中each的三种遍历方法 $.post("urladdr", { "data" : "data" }, function(data) { $.each(data, function(n,value) { });}); 1.选择器+遍历 $('div').each(function (i){ i就是索引值 this 表示获取遍历每一个dom对象 }); 2.选择器+遍历 $('div').each(function (index,dom

Java中Map的三种遍历方法

Map的三种遍历方法: 1. 使用keySet遍历,while循环: 2. 使用entrySet遍历,while循环: 3. 使用for循环遍历. 告诉您们一个小秘密: (下↓面是测试代码,最爱看代码了,啰嗦再多也没用) 一般人我不告诉他哦. import java.util.*; //0 我的Main界面 public class MapTraverse { public static void main(String[] args) { String[] str = {"I love you

关于二叉树的几种遍历方法

转载请注明出处 http://blog.csdn.net/pony_maggie/article/details/38390513 作者:小马 一 二叉树的一些概念 二叉树就是每个结点最多有两个子树的树形存储结构.先上图,方便后面分析. 1 满二叉树和完全二叉树 上图就是典型的二叉树,其中左边的图还叫做满二叉树,右边是完全二叉树.然后我们可以得出结论,满二叉树一定是完全二叉树,但是反过来就不一定.满二叉树的定义是除了叶子结点,其它结点左右孩子都有,深度为k的满二叉树,结点数就是2的k次方减1.完

android HashMap的几种遍历方法

HashMap的几种遍历方法 1.第一种: Map<String, ArrayList> map = new HashMap<String, ArrayList>(); Set<String> keys = map.keySet(); Iterator<String> iterator = keys.iterator(); while (iterator.hasNext()) { String key = iterator.next(); ArrayList

迭代器三种遍历方法

迭代器三种遍历方法,其中也有listIterator在遍历中加入新的元素,不会报错 1 /* 2 listIterator 方法有双向遍历的特点 3 如果要在迭代的过程中加入新的元素,那么就需要利用迭代器中的it.add()方法; 4 不能使用list.add()方法! 5 */ 6 //三种遍历list容器的方式 7 List list = new ArrayList(); 8 list.add("xiaoming"); 9 list.add("longge");