使用Dictionary键值对判断字符串中字符出现次数

Posted gygg

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Dictionary键值对判断字符串中字符出现次数相关的知识,希望对你有一定的参考价值。

介绍Dictionary

使用前需引入命名空间 using System.Collections.Generic

Dictionary里面每一个元素都是一个键值对(由两个元素组成:键和值)

键必须是唯一的,而值不需要唯一

键和值都可以是任何类型(比如:string,int,自定义类型等)

通过一个键读取一个值的时间接近0(1)

键值对之间的偏序可以不定义

使用Dictionary

使用dictionary判断字符串中字符出现次数

var dic = new Dictionary<char, int>();
string str = "welcome to china,and bei jing huan ying ni";
for (int i = 0; i < str.Length; i++)

    if (!dic.ContainsKey(str[i]))//判断是否包含指定键名
    
        dic.Add(str[i], 1);
    
    else
    
        dic[str[i]]++;//如果这个键值对中存在这个元素,就把个数加1
    

//利用一个键值对KeyValuePair来访问这个元素
foreach (KeyValuePair<char, int> item in dic)

    Console.WriteLine("字符0 1在这个句子中出现了2次", item.Key, (int)item.Key, item.Value);

Console.ReadKey();

技术图片

键值对中value是数组

//键值对中value是数组
var dic = new Dictionary<string, string[]>();
string[] HuBei =  "wuhan", "tianmen", "xiantao" ;
string[] GuangDong =  "guangzhou", "shenzhen", "foshan" ;
dic.Add("HB", HuBei);
dic.Add("GD", GuangDong);
Console.WriteLine(dic["HB"][0]);
Console.WriteLine(dic["GD"][1]);
Console.ReadKey();

技术图片

键值对中value是类

static void Main(string[] args)
          
    //键值对中value是类
    var stuList = new Dictionary<string, Student>();
    for (int i = 0; i < 3; i++)
    
        Student stu = new Student();
        stu.Num = i.ToString();
        stu.Name = "Student" + i.ToString();
        stuList.Add(i.ToString(), stu);
    
    foreach (var student in stuList)
    
        Console.WriteLine("Output : Key 0, Num : 1, Name : 2",
        student.Key, student.Value.Num, student.Value.Name);
    
    Console.ReadKey();


public class Student

    public string Num  get; set; 
    public string Name  get; set; 

技术图片

End!

以上是关于使用Dictionary键值对判断字符串中字符出现次数的主要内容,如果未能解决你的问题,请参考以下文章

python中字典dictionary详解及基本使用

查找字母在字符串中出现的次数

第11天:Python dictionary

C# Dictionary 用法;

数据字典Dictionary存放键值对

as3 object与dictionary区别