摘自 Larry Osterman 的 blog 。
一. 两个长度不一样的字符串有可能是相等的。
二. 将字符串转换成大写(或小写)的时候,转换后的字符串有可能长度会增加。
The first problem occurs in the very first line of the routine:
if (string1.Length != string2.Length)
The problem is that two strings can be equal, even if their lengths aren’t equal!
My favorite example of this is the German sharp-s character, which is used in the German word straße. The length of straße is 6 characters, and the length of the upper case form of the word (STRASSE) is 7 characters. These strings are considered as equal in German, even though the lengths don’t match.