zoukankan      html  css  js  c++  java
  • C# Dictionary学习

    using System;
    using System.Collections;
    using System.Configuration;
    using System.Data;
    using System.Linq;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Collections.Generic;
    public partial class test : System.Web.UI.Page
    {
    protected void Page_Load(object sender, EventArgs e)
    {
    Dictionary<string, int> dict = new Dictionary<string, int>();
    DataTable dt = GetDataTable();
    if (dt != null && dt.Rows.Count > 0)
    {
    foreach (DataRow dr in dt.Rows)
    {
    if (!dict.ContainsKey(dr[0].ToString()))
    dict.Add(dr[0].ToString(), Int32.Parse(dr[1].ToString()));
    //而使用索引器来赋值时,如果键已经存在,就会修改已有的键的键值
    // dict[dr[0].ToString()] = Int32.Parse(dr[1].ToString());
    }
    }
    //泛型结构体
    foreach (KeyValuePair<string, int> kvp in dict)
    Response.Write("key=" + kvp.Key + ",value=" + kvp.Value + "<br />");

    //输出结果:
    // key=新闻,value=3
    // key=产品,value=8
    //===================================================//
    Dictionary<int, Person> pdict = new Dictionary<int, Person>();
    for (int i = 1; i < 3; i++)
    {
    Person p = new Person();
    p.Id = i;
    p.Name = "名称 " + i;
    pdict.Add(i, p);
    }
    //获取值得集合
    foreach (Person p in pdict.Values)
    {
    Response.Write("id=" + p.Id + ",name=" + p.Name + "<br />");
    }
    //输出结果:
    // id=1,name=名称 1
    // id=2,name=名称 2
    }
    DataTable GetDataTable()
    {
    DataTable dt = new DataTable();
    DataRow dr;
    dt.Columns.Add(new DataColumn("Type", typeof(string)));
    dt.Columns.Add(new DataColumn("Amount", typeof(Int32)));
    dr = dt.NewRow();
    dr[0] = "新闻";
    dr[1] = "3";
    dt.Rows.Add(dr);
    dr = dt.NewRow();
    dr[0] = "产品";
    dr[1] = "8";
    dt.Rows.Add(dr);
    dr = dt.NewRow();
    dr[0] = "产品";
    dr[1] = "8";
    dt.Rows.Add(dr);
    return dt;
    }
    public class Person
    {
    public int Id { get; set; }
    public string Name { get; set; }
    }

    /*
    //C#3.0 Dictionary初始化赋值的新语法

    Dictionary<int, string> dic = new Dictionary<int, string>{
    {1,"A"}, {2,"B"}, {3,"C"}, {4,"D"},{5,"E"},
    {6,"F"}, {7,"G"}, {8,"H"},{9,"I"},{10,"J"},
    {11,"K"},{12,"L"},{13,"M"},{14,"N"},{15,"O"},
    {16,"P"},{17,"Q"},{18,"R"},{19,"S"},{20,"T"},
    {21,"U"}, {22,"V"},{23,"W"}, {24,"X"},{25,"Y"},
    {26,"Z"}
    };
    string val = dict.FirstOrDefault(d => d.Key == 2).Value;

    */


    }



  • 相关阅读:
    Windows 8 系列(二):Metro Style 应用程序生命周期(Metro Style Application Life Cycle)
    Windows 8 系列(十):关于AppBar持久显示的相关问题
    Win8 博客园MX应用隐私声明
    Windows 8 系列(四):Win8 RSA加密相关问题
    Windows 8 系列(五):Windows App Cer Kit(Certification Kit)的使用与相关问题
    Windows 8 系列(八):Win8无法获取机器唯一标识的替代方案
    Windows 8 系列(三):挂起管理(Suspension Management )
    java方法
    oracle 10gR2 sql查询性能相关摘要
    IE6,7兼容
  • 原文地址:https://www.cnblogs.com/gdjlc/p/2086922.html
Copyright © 2011-2022 走看看