String
string相关函数常会用到
public enum StringComparison {
CurrentCulture,
CurrentCultureIgnoreCase,
InvariantCulture,
InvariantCultureIgnoreCase,
Ordinal,
OrdinalIgnoreCase
}
-
IgnoreCase不区分大小写,比不带后缀的要慢
-
Ordinal是二进制级别的比较,是最快的
-
CurrentCulture和InvariantCulture一个和当前语言环境有关,一个无关,但一般都差于Ordinal
常用优化
-
string.startswith/string.endswith用自定义方法,逐char比较即可
-
string相等性比较用string.equals(a,b)
-
string大小比较用string.compare(a,b,StringComparison.Ordinal)
-
如果查找单字符,逐字符比较的indexof优于string.indexof(char)优于string.indexof(string)
lastindexof同理
-
string.replace(char, char)性能比string.replace(string, string)高一倍,自定义效率不高
-
string的gethashcode耗时与长度成线性关系
Enum&&Dictionary
- Dictiona