在我正在开发的应用程序中,我创建了几个对象,每个对象都具有以下属性:
/// <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()。它会对创建的字符串使用的内存产生影响吗?
答案 0 :(得分:1)
对于几千个条目,它根本不重要。作为拇指规则,只要Listview不是由于性能和内存消耗原因而不是虚拟的,您就不必担心字符串实习。