1

在我正在开发的应用程序中,我正在创建几个对象,每个对象都具有以下属性:

    /// <summary>
    /// Gets the jumps text.
    /// </summary>
    public string JumpsText
    {
        get
        {
            return Jumps == -1 ? String.Empty : String.Format("{0} jump{1}", Jumps, Jumps != 1 ? "s" : String.Empty);
        }
    }

这些对象用于迭代列表视图。创建的对象可以从 1 到最多 3000 不等,这意味着从上述属性创建的字符串对于不同的对象可以是相同的。

我的问题是:

String.Intern(String.Format("{0} jump{1}", Jumps, Jumps != 1 ? "s" : String.Empty))在这种情况下是否会建议使用 String.Intern() 。它会对创建的字符串使用的内存有什么影响吗?

4

1 回答 1

1

对于几千个条目,它根本不重要。根据经验,只要由于性能和内存消耗的原因 Listview 不是虚拟的,您就不需要担心字符串实习。

于 2012-04-12T15:33:58.360 回答