String 是一个类,它需要一个 char 数组来初始化自身,因此当您尝试获取某个索引处的元素时,它会返回 char。
检查字符串类
public sealed class String : IComparable, ICloneable, IConvertible, IComparable<string>, IEnumerable<char>, IEnumerable, IEquatable<string>
{
// Summary:
// Initializes a new instance of the System.String class to the value indicated
// by an array of Unicode characters.
//
// Parameters:
// value:
// An array of Unicode characters.
[SecuritySafeCritical]
public String(char[] value);
}
另见字符串类声明。
public sealed class String : IComparable, ICloneable, IConvertible, IComparable<string>, IEnumerable<char>, IEnumerable, IEquatable<string>
由IEnumerable<char>继承。
在 string 类中有一个 get 属性,它在传递索引时返回 char,见图。其中明确表示在当前 System.String 中的指定位置获取 System.Char 对象
public char this[int index] { get; }