C#字符串与数组操作全解析
2026/7/4 19:19:44 网站建设 项目流程

第八次

一,字符串创建

1,对象类型: 可以通过class 创建一个对象类型

如:People p1 = new People() { Id=100}; //p1对象类型

2,基本类型: int float double 等 int = 10

如:int a = 10;
Test(a);
Test1(p1)

3,字符串的创建方法

【1】, 字面量创建方式: 是最简单的创建方式 建议使用的一种方式

如: string s1 = "hello yvwei";

【2】,2, 字符串中有特殊符号 \ 也是一个特殊字符 \n 换行; \t Tab; \r回车; \s space, \r将光标移回当前行的行首,但不换到新行。

如:string s3 = "我是余伟,\\n爱\\t吃肘子\\r";
Console.WriteLine(s3);

【3】,要求字符串显示\n 需要对特殊符号进行转义处理 加一个\

如:string s3 = "我是余伟,\\n爱\\t吃肘子\\r";
Console.WriteLine(s3);

【4】,使用@符号创建字符串 保留字符串各种符号换行等效果

【5】,字符串创建方式 通过new string构建字符串

如:

char[] chars = new char[] { '老', '余', '伟' };//创建一个字符数组

string str = new string(chars);
Console.WriteLine(str);

【6】,使用$符号进行格式化

如:double gz = 1000000;
double age = 18;
string str6 = $"工资{gz},年龄{age}";
Console.WriteLine(str6);

【7】,字符串属性 类似于特殊的数组 索引值从0开始

如: string str7 = "誉为是多少";
Console.WriteLine(str7.Length); // 字符个数 7
Console.WriteLine(str7[str7.Length-1]); // 少

也可以遍历

for (int i = 0; i< str7.Length; i ++)
{
char c = str7[i];
Console.WriteLine(c);
}

二,字符串的常用方法

1,,IndexOf() 获取字符在字符串中的索引值 如果找到了返回索引值, 如果找不到返回-1

如: string str = "abcdefgabc";
Console.WriteLine(str.IndexOf("a")); //0
Console.WriteLine(str.IndexOf("h")); //-1
Console.WriteLine(str.IndexOf("bc")); //1
Console.WriteLine(str.IndexOf('f', 4)); //5 从参数2开始搜索参数1
输出结果:

2,LastIndexOf() 从后往前找 找出第一个与之匹配的字符

3,IndexOfAny() 从字符组成这个范围中找任何一个对应的索引值

4,LastIndexOf() 从后往前找 找到范围其中的一个索引值

5, Contains() 是否包含参数 返回值 true/false

6,ToUpper() 把字符转成大写的

7,ToLower() 把字符串改为小写

8,StartsWith() 判断字符串中是否已该参数开头

如:

string str2 = "余伟大聪明";
Console.WriteLine(str2.StartsWith("余伟"));//true
Console.WriteLine(str2.StartsWith("余1伟"));//false

9, EndsWith() 判断是不是以 什么结尾

10,IsNullOrEmpty() 判断字符串是不是null 或者是空字符串

如:

string str3 = "";
Console.WriteLine(string.IsNullOrEmpty(str3)); //true


str3 = null;
Console.WriteLine(string.IsNullOrEmpty(str3));//true

str3 = " ";//空格字符串

Console.WriteLine(string.IsNullOrEmpty(str3));//false

11, Equals() 判断两个字符串是否相等

12,Join() 把指定的分隔符号添加对应的字符之间

13,Substring() 截取字符串从索引值为1开始,截取3个长度

14,Split() 按照指定的符号进行分割字符串

15, 重点 Concat () 拼接多个字符串

16,//从原字符串参数1索引开始赋值,赋值到参数2数组里面,放到目标数组的索引值为参数3的地方,复制参数四个元素

如:

char[] c1 = new char[15] ; //定义一个字符数组,长度为15

str4.CopyTo(1, c1, 5, 6);
for (int i = 0; i < c1.Length; i++)
{
Console.WriteLine(c1[i]+"-------------");
}

17,Remove() 删除字符 ,从参数1开始删除, 删除参数2个数, 返回结果是剩余的

18,Replace() 用参数2,替换参数1

19, Format() 字符串格式化

20,ToCharArray() 把字符串转成一个个字符所组成的数组

三,数组

1,数组: 是一个引用类型, 目的是为了存储相同的数据,也可以通过索引值取出数组的元素数组是有顺序的,顺序是从零开始, 也可以对数组进行遍历等操作

2,数组命名 尽量在名称后加一个s , 能够使开发者知道是一个数组,例如int [] nums, string [] names 等

3,数组是有长度的,最大索引值等于长度-1;

4,定义数组
【1】,字面量定义数组(快速定义数组)
int[] nums = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 }; //创建已经添加了数组的元素

【2】,定义可以带有数组长度的数组
string[] strs = new string[6]; //长度为六的字符串数组

【3】,可以定义带初始元素和长度的数组

char[] chars = new char[6] {'A', 'A', 'A', 'A', 'A', 'B'};

【4】, 可以定义数组不带长度只带初始元素的数组
double[] doubles = new double[] { 1,2,3};

【5】,

如何给数组添加元素

//strs[0] = "余伟";//单独添加元素
//strs[1] = "猪";

//使用for循环添加
for (int i = 0; i < strs.Length; i++)
{
strs[i] = "余伟"+i+"是猪";

}

【6】,如何获取数组长度

Console.WriteLine(strs.Length);//6
Console.WriteLine(strs[0]); //获取其中一个元素

//遍历数组
for (int i = 0; i < strs.Length; i++)
{
Console.WriteLine(strs[i]+"-");

【7】,

//遍历方式二
//int 数组元素的类型
//i 每一个元素
//in 在那个数组
//nums 数组
foreach (int i in nums)
{
Console.WriteLine(i+"?");
}

//int[] 一维数组
// 数组包含: 一维数组,多维数组, 交错数组

“ 上文 为本次为第八部分内容,后续将不定时更新,若对主题感兴趣,欢迎订阅获取更新通知."


需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询