美文网首页
26.C# 字符串基础

26.C# 字符串基础

作者: 技术老小子 | 来源:发表于2024-03-02 06:26 被阅读0次

摘要


在编程时字符串是比较常用的一种数据类型,例如用户名、邮箱、家庭住址、商品名称等信息都需要使用字符串类型来存取。

字符串是值为文本的 String 类型对象。 文本在内部存储为 Char 对象的依序只读集合。

正文


string 与System.String

在 C# 中,string 关键字是 String 的别名。 因此,并且string是等效的String,无论建议使用提供的别名string,即使没有using System;String 类提供了安全创建、操作和比较字符串的多种方法。

声明

//声明一个字符串
string message1;

//初使化为null
string message2 = null;

//初使化为一个空字符串
//这个一般就用""替代了
string message3 = System.String.Empty;

//初使化一个路径字符串
string oldPath = "c:\\Program Files\\Microsoft Visual Studio 2022";

//用String类来申明一个字符串
System.String greeting = "Hello World!";

//一行初使化几个变量
string l1 = "C#", l2 = "Java", l3 = "Python";

//通过char数组声明字符串
char[] ary = { '张', '三' };
string a = new string(ary);

空字符串与null的区别

string msg1 = "";
string msg2 = null;//空对像
Console.WriteLine(msg1.ToString());
Console.WriteLine(msg2.ToString());//出错

字符串的不可变性

符串对象是不 可变的:创建字符串对象后无法更改它们。 看起来是在修改字符串的所有 String 方法和 C# 运算符实际上都是在新的字符串对象中返回结果。 在下面的示例中,当 s1s2 的内容被串联在一起以形成单个字符串时,两个原始字符串没有被修改。 += 运算符创建一个新的字符串,其中包含组合的内容。 这个新对象被分配给变量 s1,而分配给 s1 的原始对象被释放,以供垃圾回收,因为没有任何其他变量包含对它的引用。

string s1 = "A string is more ";
string s2 = "than the sum of its chars.";
s1 += s2;

System.Console.WriteLine(s1);

转义符应用到数组中

string columns = "Column 1\tColumn 2\tColumn 3";
Console.WriteLine(columns);
string rows = "Row 1\r\nRow 2\r\nRow 3";
Console.WriteLine(rows);

段落字符串

string text = @"虽然一年一度的WWDC主要是一个软件发布会,
但也总是时不时地给出一些硬件惊喜,今年也不例外。在WWDC22上,苹果公布了用于Mac(和iPad)
平台的第二代苹果系统芯片——M2。
这个时间点有些引人关注,尤其它是在M1芯片的王者之M1 Ultra发售后还不到三个月的时间,
就带来了第二代芯片,可谓没有浪费任何的时间。...";
Console.WriteLine(text);

//输出双引号
string msg = @"张三有个别名叫 ""小张""";
string msg = "张三有个别名叫 \"小张\"";
Console.WriteLine(msg);

字符串转义序列

转义序列 字符名称 Unicode 编码
' 单引号 0x0027
" 双引号 0x0022
\ 反斜杠 0x005C
\0 null 0x0000
\a 警报 0x0007
\b Backspace 0x0008
\f 换页 0x000C
\n 换行 0x000A
\r 回车 0x000D
\t 水平制表符 0x0009
\v 垂直制表符 0x000B
\u Unicode 转义序列 (UTF-16) \uHHHH(范围:0000 - FFFF;示例:\u00E7 =“ç”)
\U Unicode 转义序列 (UTF-32) \U00HHHHHH(范围:000000 - 10FFFF;示例:\U0001F47D = "👽")
\x 除长度可变外,Unicode 转义序列与“\u”类似 \xH[H][H][H](范围:0 - FFFF;示例:\x00E7\x0E7\xE7 =“ç”)

相关文章

  • Redis学习笔记:String内部编码及其应用场景

    一、概述 字符串类型是Redis最基础的数据结构,Redis中的键都是字符串类型,其他几种数据结构都是在字符串基础...

  • Redis学习笔记【04】 - 字符串

    一、简介 字符串类型是redis最基础的数据结构。首先键都是字符串类型,而其它几种数据结构类型都是在字符串类型基础...

  • 字符串

    字符串http://book.jirengu.com/fe/前端基础/Javascript/字符串.html 字符...

  • redis字符串详解

    字符串类型是Redis最基础的数据结构。首先键都是字符串类型,而且其他几种数据结构都是在字符串类型基础上构建的,所...

  • 常见函数入门

    1.字符串操作函数 paste()连接字符串 strsplit()将字符串分开 2.基础函数 rbind() 按...

  • Java基础:String类

    相关阅读 Java基础:String类 Java字符串格式化 Java基础:正则表达式 1. 概述 字符串是由多个...

  • 深度分析:Redis 的数据结构及其使用场景分析,原来这么简单?

    Redis基础数据结构有哪些? 一、String(字符串) 在任何一种编程语言里,字符串String都是最基础的数...

  • 一. Python爬虫基础

    1.字符串基础 ①字符串的加法和乘法 结果: I love Scrapy!!! ②字符串的切片和索引 结果: ...

  • Redis----字符串

    字符串类型是Redis最基础的数据结构,其它几种数据结构都是在字符串类型基础上构建的。需要注意的是字符串值最大不能...

  • Swift 2 学习笔记 4.字符串

    课程来自慕课网liuyubobobo老师 字符串 字符串基础 Character 和 Unicode String...

网友评论

      本文标题:26.C# 字符串基础

      本文链接:https://www.haomeiwen.com/subject/oeiqzdtx.html