翼度科技»论坛 编程开发 .net 查看内容

C#.Net筑基-String字符串超全总结 [深度好文]

9

主题

9

帖子

27

积分

新手上路

Rank: 1

积分
27

字符串是日常编码中最常用的引用类型了,可能没有之一,加上字符串的不可变性、驻留性,很容易产生性能问题,因此必须全面了解一下。
01、字符与字符编码

1.1、字符Char

字符 char 表示为 Unicode字符,在C#中用 UTF-16 编码表示,占用2个字节(16位)大小,字面量用单引号''包裹。
  1. char c = 'A';
  2. Console.WriteLine(char.IsDigit('3'));
  3. Console.WriteLine(char.IsNumber('1'));
  4. Console.WriteLine(char.IsLetter('A'));
  5. Console.WriteLine(char.IsLower('a'));
  6. Console.WriteLine(char.IsUpper('A'));
  7. Console.WriteLine(char.GetUnicodeCategory('A')); //获取字符分类
复制代码

  • char 是值类型(结构体),以16位整数形式存储,char可隐式转换为int。
  • 字符串可以看做是char序列(数组),字符串是引用类型。
  1. string str = "Hello World";
  2. Console.WriteLine(str[0]);  //H
  3. Console.WriteLine(str[10]); //d
  4. Console.WriteLine(str[0].GetType().Name); //Char
复制代码
1.2、字符集Unicode与字符编码

一般情况下字符串长度string.Length 就是可见的文本字符数量,但这并不绝对相等。大多数字符都是一个char组成,然而有些字符无法用一个char表示,如表情、不常用字符等,他们会用两个char(4个字节)来表示。
[code]"a".Length.Dump();    //1"
来源:https://www.cnblogs.com/anding/p/18221262
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具