C#集合示例

using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            // Create a new dictionary of strings, with string keys.
            //
            Dictionary<string, string> openWith =
                new Dictionary<string, string>();
            // Add some elements to the dictionary. There are no
            // duplicate keys, but some of the values are duplicates.
            openWith.Add("txt", "notepad.exe");
            openWith.Add("bmp", "paint.exe");
            openWith.Add("dib", "paint.exe");
            openWith.Add("rtf", "wordpad.exe");
            // The Add method throws an exception if the new key is
            // already in the dictionary.
            try
            {
                openWith.Add("txt", "winword.exe");
            }
            catch (ArgumentException)
            {
                Console.WriteLine("An element with Key = \"txt\" already exists.");
            }
            // The Item property is another name for the indexer, so you
            // can omit its name when accessing elements.
            Console.WriteLine("For key = \"rtf\", value = {0}.",
                openWith["rtf"]);
            // The indexer can be used to change the value associated
            // with a key.
            openWith["rtf"] = "winword.exe";
            Console.WriteLine("For key = \"rtf\", value = {0}.",
                openWith["rtf"]);
            // If a key does not exist, setting the indexer for that key
            // adds a new key/value pair.
            openWith["doc"] = "winword.exe";
            // The indexer throws an exception if the requested key is
            // not in the dictionary.
            try
            {
                Console.WriteLine("For key = \"tif\", value = {0}.",
                    openWith["tif"]);
            }
            catch (KeyNotFoundException)
            {
                Console.WriteLine("Key = \"tif\" is not found.");
            }
            // When a program often has to try keys that turn out not to
            // be in the dictionary, TryGetValue can be a more efficient
            // way to retrieve values.
            string value = "";
            if (openWith.TryGetValue("tif", out value))
            {
                Console.WriteLine("For key = \"tif\", value = {0}.", value);
            }
            else
            {
                Console.WriteLine("Key = \"tif\" is not found.");
            }
            // ContainsKey can be used to test keys before inserting
            // them.
            if (!openWith.ContainsKey("ht"))
            {
                openWith.Add("ht", "hypertrm.exe");
                Console.WriteLine("Value added for key = \"ht\": {0}",
                    openWith["ht"]);
            }
            // When you use foreach to enumerate dictionary elements,
            // the elements are retrieved as KeyValuePair objects.
            Console.WriteLine();
            foreach (KeyValuePair<string, string> kvp in openWith)
            {
                Console.WriteLine("Key = {0}, Value = {1}",
                    kvp.Key, kvp.Value);
            }
            // To get the values alone, use the Values property.
            Dictionary<string, string>.ValueCollection valueColl =
                openWith.Values;
            // The elements of the ValueCollection are strongly typed
            // with the type that was specified for dictionary values.
            Console.WriteLine();
            foreach (string s in valueColl)
            {
                Console.WriteLine("Value = {0}", s);
            }
            // To get the keys alone, use the Keys property.
            Dictionary<string, string>.KeyCollection keyColl =
                openWith.Keys;
            // The elements of the KeyCollection are strongly typed
            // with the type that was specified for dictionary keys.
            Console.WriteLine();
            foreach (string s in keyColl)
            {
                Console.WriteLine("Key = {0}", s);
            }
            // Use the Remove method to remove a key/value pair.
            Console.WriteLine("\nRemove(\"doc\")");
            openWith.Remove("doc");
            if (!openWith.ContainsKey("doc"))
            {
                Console.WriteLine("Key \"doc\" is not found.");
            }
            Console.ReadKey();
        }
    }
}

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索key
, dictionary
, tif
, value
, console
, c#代码 tif
, KeyNotFoundException
, The
WriteLine
c站、c语言、cf、ch、c罗,以便于您获取更多的相关知识。

时间: 2024-10-29 02:15:49

C#集合示例的相关文章

java实现高效的枚举元素集合示例_java

思路分析:可以通过为EnumSet指定类型,该类型即为在同一包中定义的枚举类.使用EnumSet类的add()方法添加元素,使用EnumSet类的remove()方法删除元素,使用EnumSet类的complementOf()方法获取对象的全部,使用EnumSet类的range()方法获取指定范围的元素. 代码如下: 复制代码 代码如下: package cn.edu.xidian.crytoll;public enum Weeks {    MONDAY, TUESDAY, WEDNESDAY

LINUX异步信号集合示例代码

主要以sigemptyset(),sigaddset()函数为基础查看信号集的存储结构. 用于进程间的异步通信. 1 #include <signal.h> 2 #include <stdio.h> 3 #include <stdlib.h> 4 5 int output(sigset_t set); 6 7 int main() 8 { 9 sigset_t set; 10 printf("after empty the set:\n"); 11

ASP入门教程-使用Querystring集合

当使用表单的Get 方式提交数据时,表单中的数据被保存在 Request 对象的 Querystring 集合中.除了读取表单对象传递的参数外,Querystring 集合还可以通过读取 HTTP 查询字符串中的参数值来传递参数.使用 Querystring 集合来传递数据的语法格式如下: Request.Querstring (变量名) [(索引值)|.变量的个数] 注解: "变量"为在 HTTP 查询字符串中指定要检索的变量名称: "索引值"用于检索多个变量值中

ASP入门教程-使用Form集合

当使用表单的Post 方式提交数据时,表单中的数据被保存在 Request 对象的 Form 集合中.使用 Form 集合来传递数据 的语法格式如下: Request.Form (元素名) [(索引值)|.表单某元素的个数] 注解: 元素名为Form 集合所要 检索的表单元素(控件)名称: 索引值指定表单元素多个值中的某一个.比如checkbox.select等控件对象,要指定某一个值时就要使用索引值: 在利用 Form 集合读取参数时,与之相对应的 HTML 在页面中的表单的 Method 属

跟我学xml和XSL

xml 跟我学xml和XSL第一个XML文档 随着Internet的发展,越来越多的信息进入互联网,信息的交换.检索.保存及再利用等迫切的需求使HTML这种最常用的标记语言已越来越捉襟见肘.HTML将数据内容与表现融为一体,可修改性.数据可检索性差,而XML借鉴了HTML与数据库.程序语言的优点,将内容与表现分开,不仅使检索更为方便,更主要的是用户之间数据的交换更加方便,可重用性更强. XML是一种元标记语言,没有许多固定的标记,为WEB开发人员提供了更大的灵活性.当我们使用HTML时,标记只是

数据绑定服务器控件

服务器|控件|数据 数据绑定服务器控件 数据绑定概述和语法 ASP.NET 引入了新的声明性数据绑定语法.这种非常灵活的语法允许开发人员不仅可以绑定到数据源,而且可以绑定到简单属性.集合.表达式甚至是从方法调用返回的结果.下表显示了新语法的一些示例. 简单属性 Customer: <%# custID %> 集合 Orders: <asp:ListBox id="List1" datasource='<%# myArray %>' runat="

Windows 8 Store Apps学习(7) 布局控件

Canvas, Grid, StackPanel, VirtualizingS 介绍 重新想象 Windows 8 Store Apps 之布局控件 Canvas - 绝对定位式布局 Grid - 网格式布局 StackPanel - 流式布局 VirtualizingStackPanel - 仅能用于 ItemsControl WrapGrid - 仅能用于 ItemsControl VariableSizedWrapGrid - 用于 Wrap 子元素集合 示例 1.Canvas 的 Dem

【Solidity】6. 合约 - 深入理解Solidity

索引 [Solidity]1.一个Solidity源文件的布局 [Solidity]2.合约的结构体 [Solidity]3.类型 [Solidity]4.单位和全局可变量 [Solidity]5.表达式和控制结构 [Solidity]6. 合约 [Solidity]7. 部件 [Solidity]8. 杂项 合约 Solidity的合约类似于面向对象语言的类. 它们包含可以修改这些变量的状态变量和函数中的持久性数据. 在不同的合同(实例)上调用函数将执行EVM函数调用,从而切换上下文以使状态变

《Redis实战》一1.3 你好Redis

1.3 你好Redis 在对Redis提供的5种结构有了基本的了解之后,现在是时候来学习一下怎样使用这些结构来解决实际问题了.最近几年,越来越多的网站开始提供对网页链接.文章或者问题进行投票的功能,其中包括图1-6展示的reddit以及图1-7展示的StackOverflow.这些网站会根据文章的发布时间和文章获得的投票数量计算出一个评分,然后按照这个评分来决定如何排序和展示文章.本节将展示如何使用Redis来构建一个简单的文章投票网站的后端. 1.3.1 对文章进行投票 要构建一个文章投票网站