学习笔记--比较 Strings的值

 计算机可以以字母顺序排列字符是因为字符是以unicode numeric code 的内部形式表示。当比较两个string时,c#比较构成它们的那些字符的unicode.

String 类提供了多个方法比较strings, 这里比较其中的Equals方法, CompareTo方法 和 == 方法。

  1. Equals方法是System.String继承自object类,Equals方法比较两个比较的对象是否含有相同的值。字符窜中的每个字符都会被比较。
  2. == 方法与Equals方法意思一样。字符窜中的每个字符都会被比较。
  3. static Equals 方法比较作为参数的两个string是否相等。
  4. CompareTo 方法返回0 如果相同的话,-1 如果调用CompareTo方法的string对象比作为参数的string小。 大的话是 1。字符窜中的每个字符都会被比较。例如

            string str = "hellq";
            string str2 = "hellp";
            Console.WriteLine("" + str.CompareTo(str2)); 结果是1

            string str = "hello";
            string str2 = "hellp";
            Console.WriteLine("" + str.CompareTo(str2)); 结果是-1

 hashtable通过调用key对象的gethashtable方法返回的hash code来决定数据类在hashtable中的存储位置。hash code 是有object类的gethashtable 方法来进行hashcode 计算。尽管所有的类都从object类继承了这个方法,但仍建议重写重写object类的这个方法。Class String overides 方法 GetHashCode 来根据祖父窜的内容提供一个平均的 hash-code 分布。注:不同的字符窜也有相同的hashcode

请大家多提意见

你可能感兴趣的:(String,object,C#,equals,存储,Class)