【问题标题】:Add characters in dictionary [duplicate]在字典中添加字符[重复]
【发布时间】:2013-03-06 09:59:03
【问题描述】:

在我的程序中,我有一段代码可以在字典中添加字符

 var listOfSimilarCharacters = new Dictionary<string, string>();
 listOfSimilarCharacters.Add("l", "!");
 listOfSimilarCharacters.Add("1", "i");
 listOfSimilarCharacters.Add("O", "0");
 listOfSimilarCharacters.Add("o", "I");

但在我的代码上面我有一个属性“SimilarCharacters”,我需要删除它并删除四个listOfSimilarCharacters.Add

/// <summary>
/// A constant that is lists all similar characters.
/// </summary>
public const string SimilarCharacters = "l!1iO0oI";

以某种方式,我需要将SimilarCharacters 中的字符添加到字典中并读出SimilarCharacters,这样我就可以使用它而不是四行。

【问题讨论】:

标签: c#


【解决方案1】:
        string SimilarCharacters = "l!1iO0oI";

        var listOfSimilarCharacters = new Dictionary<string, string>();

        bool timeToAdd = false;
        string key = String.Empty;
        string value = String.Empty;
        foreach ( var c in SimilarCharacters )
        {
            if ( timeToAdd )
            {
                value = c.ToString();
                listOfSimilarCharacters.Add( key, value );
            }
            else
            {
                key = c.ToString();
            }
            timeToAdd = !timeToAdd;
        }

【讨论】:

    【解决方案2】:

    您可以使用集合初始化器来填充您的字典:

    var listOfSimilarCharacters = new Dictionary<string, string> { 
      { "l", "!" }, { "1", "i" }, {"O", "0"}, {"o", "I"} 
    };
    

    顺便说一句,您为什么使用字符串来存储字符?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-09-20
      • 1970-01-01
      • 2022-03-08
      • 1970-01-01
      • 2023-03-20
      • 1970-01-01
      • 2011-08-25
      • 1970-01-01
      相关资源
      最近更新 更多