Many of the core facilities that you need when programming are provided not by the C# language, but by types in the .NET Framework. In this chapter, we cover the Framework’s role in fundamental programming tasks, such as virtual equality comparison, order comparison, and type conversion. We also cover the basic Framework types, such as
The types in this section reside in the
System namespace, with the following exceptions:
StringBuilder is defined in
System.Text, as are the types for text encodings.
CultureInfo and associated types are defined in
XmlConvert is defined in
char represents a single Unicode character and aliases the
System.Char struct. In Chapter 2, we described how to express
char literals. For example:
char c = 'A'; char newLine = '\n';
System.Char defines a range of static methods for working with characters, such as
IsWhiteSpace. You can call these through either the
System.Char type or its
Console.WriteLine (System.Char.ToUpper ('c')); // C Console.WriteLine (char.IsWhiteSpace ('\t')); // True
ToLower honor the end user’s locale, which can lead to subtle bugs. The following expression evaluates to
false in Turkey:
char.ToUpper ('i') == 'I'
because in Turkey,
char.ToUpper ('i') is
'İ' (notice the dot on top!). To avoid this problem,
System.String) also provides ...