我们可以:
var t=new String(new[] { '繁', '體', '中', '文' });
或者
var encoding=Encoding.Unicode;
var bytes=encoding.GetBytes(new[] { 'E', 'n', 'g', 'l', 'i', 's', 'h' });
var t=encoding.GetString(bytes);
没有类似的东西:
public static implicit operator String(char[] charArray) {
return new String(charArray);
}
我们不可以:
String t=new[] { 'р', 'у', 'с', 'с', 'к', 'и', 'й', '\x20', 'я', 'з', 'ы', 'к' };
我知道字符数组与字符串不同;但有时我只想直接将一个字符数组分配给一个字符串;没有显式转换、转换或new X(new Y(new Z ...
.
而且我个人认为,未提供它的原因可能是:
C-Sharp 团队希望程序员,尤其是有 C++/C 经验的程序员记住,C-Sharp与C++ 或 C不同。
问题是为什么不呢?那不好吗?