C#の学習 No. 8 文字列
stringはSystem.Stringの別名。
大量の文字列操作は、StringBuilderを使った方がいいのはJavaと同様。
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Sample { class StringTest { static void Main(string[] args) { string a = "abc"; string b = "a" + "bc"; StringBuilder sb = new StringBuilder(); sb.Append("a").Append("bc"); System.Console.WriteLine("a == b : " + (a == b)); System.Console.WriteLine("a == sb : " + (a == sb.ToString())); System.Console.WriteLine("a equals b : " + (a.Equals(b))); System.Console.WriteLine("a equals sb : " + (a.Equals(sb.ToString()))); } } }
stringの==とEqualsとの比較はJavaと違うので注意が必要。
string型の場合は例外的に、ヒープメモリの値を直接比較しますね。
http://www.ailight.jp/blog/kazuk/archive/2006/01/31/11043.aspx