news 2026/4/17 23:18:57

字符串和数组基本认识

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
字符串和数组基本认识

《字符串》

对象类型:可以通过class创建一个对象类型
基本类型:int float string 等 int a =10;

字符串创建的方法
1字面量创建方式:是最简单的创建方式 建议使用的一种方式

string s1 = "hello world";

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

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

3 使用@符号创建字符串 保留字符串各种符号换行等效果
string s4 = @"\n\t\r可以支持换行

//4字符串创建方式
char[] chars = new char[] { '老','头','乐' };//创建一个字符数组
string str5 = new string(chars);
Console.WriteLine(str5);
//5使用$符号进行格式化
double gz = 1000000;
double age = 18;
string str6 = $"工资{gz},年龄{age}";
Console.WriteLine(str6);


//字符串属性 类似于特殊的数组 索引值是从0开始
string str7 = "的好时机基督教";
Console.WriteLine(str7.Length);//字符个数 7
Console.WriteLine(str7[str7.Length-1]);//少

//也可以遍历字符串
for (int i = 0; i < str7.Length; i++)
{
char s = str7[i];
Console.WriteLine(s);
}

《字符串常用的方法》

//1重点:indexof()获取字符在字符串当中的索引值 如果找到了返回对应索引值,如果找不到返回值-1
string str = "abcdefg";
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 从后排往前找 找出一个与之匹配的字符
Console.WriteLine(str.LastIndexOf("7"));//7

//3 IndexOfAny() 从字符数组这个范围中找任何一个对应的索引值
Console.WriteLine(str.IndexOfAny(new char[] {'c','b', }));//1

//LastIndexOfAny()从后面往前找 找到范围当中其中一个的索引值
Console.WriteLine(str.LastIndexOfAny(new char[] {'c','b',}));//9

//5.重点 Contains()是否包含参数
Console.WriteLine(str.Contains("fg"));//true
Console.WriteLine(str.Contains("he"));//false
//6 重点:ToUpper() 把字符串转成大写
Console.WriteLine(str.ToUpper());
//7 重点:ToLower()转成小写字母
Console.WriteLine(str.ToLower());
//8 StartsWith判断字符串是否参数进行开头
string str2 = "张三大师傅";
Console.WriteLine(str2.StartsWith("张三"));//true
Console.WriteLine(str2.StartsWith("张1三"));//false


//9 .EndsWith()判断是不是以...结尾
Console.WriteLine(str2.EndsWith("师傅"));//true

//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()判断两个字符是否相等 对象比较的时候不要使用==,如果比较两个对象时候尽量使用equals()方法
Console.WriteLine(string.Equals(str,str2));//false

//12join() 把指定的分隔符号添加对应的字符串之间;
Console.WriteLine(string.Join(",", "a","b","c"));//a-b-c

//13 Substring()截取字符串是从索引值1开始,截取3个长度
Console.WriteLine(str2.Substring(1,3));//三大师

//14重点:Split() 按照指定的符号进行分割字符串
string str4 = "2005/12/10";//可以按照/进行分割,分割成三部分,三部分放到一个数组里面
Console.WriteLine(str4);
string[] ss = str4.Split('/');//结果是一个数组
Console.WriteLine(ss[0]);//2025
Console.WriteLine(ss[1]);//12
Console.WriteLine(ss[2]);//10
Console.WriteLine(str2.Split('/'));

//15重点 concat 拼接多个字符串
Console.WriteLine(string.Concat(str2,str4)); //张三大师傅2025/12/10

//16 .CopyTo() 从源字符串的参数1索引开始赋值,赋值到参数2数组里面,放到目标数组的索引值为参数3地方,复制参数4个元素
//"2025/12/10"
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个数,返回结果是剩余的
//Console.WriteLine(str4.Remove(1,4));
Console.WriteLine(str4.Remove(3));//只写一个参数的删除到最后 剩余字符

//18 Replace()用参数2替换参数1
Console.WriteLine(str4.Replace("2025", "2026"));


//19 Format()字符串格式化
string name = "张三";
double gz = 10000;
string.Format(string.Format("姓名{0};工资{1}",name,gz));
Console.WriteLine(string.Format("{0:c4}",gz)); //$1000000

//20 ToCharArray(); 把字符串转成一个个字符组成数组
for (int i = 0; i < str4.ToCharArray().Length; i++)
{
Console.WriteLine(str4.ToCharArray()[i]+"--------");
}

/*常用的字符串的方法
* 1 indexof()
* 2 Contains()
* 3 ToUpper()
* 4 ToLower()
* 5 StarsWith()
* 6 IsNullorEmpty
* 7 Equals()
* 8 Substring()
* 9 Split()
* 10 Remove
* 11 Concat()

《数组》

//数组:是一个引用类型,目的存储相同类型的数据,也可以通过索引值取出数组的元素,顺序是从0开始,也可以对数组进行遍历等操作
//数组是有长度的,最大索引值等于长度-1;
//数组命名尽量名称后面加一个s,能够让开发者知道是一个数组,例如int[]nums,string[]names

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

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

//3 可以定义带初始元素和长度
char[] chars = new char[6] { 'A', 'A', 'A', 'A', 'A', 'B' };


//4 可以定义数组不带长度 只带初始元素的,随着初始化元素个数设置数组的长度
double[] doubles = new double[] { 1, 2, 3 };

//如何给数组添加元素
// strs[0] = "黎元洪"; 单独添加元素
// strs[1] = "袁世凯"; 单独添加元素

//使用for循环添加
for (int i = 0; i < strs.Length; i++)
{
strs[i] = "鲁班" + i + "号";
}

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

//遍历数组
for (int i = 0; i < strs.Length; i++)
{
Console.WriteLine(strs[i] + "++++++");
}
//遍历方式2
//int 数组元素类型
//i 每一个元素
//in 在哪个数组
//nums 数组
foreach (int i in nums)
{
Console.WriteLine(i + "?0");
}
//int[] 一维数组
//数组包含:一维数组,多维数组,交错数组

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/10 18:26:09

AutoUnipus智能答题终极指南:如何实现U校园全自动满分答题

AutoUnipus智能答题终极指南&#xff1a;如何实现U校园全自动满分答题 【免费下载链接】AutoUnipus U校园脚本,支持全自动答题,百分百正确 2024最新版 项目地址: https://gitcode.com/gh_mirrors/au/AutoUnipus 还在为U校园的在线作业耗费大量时间而烦恼吗&#xff1f;A…

作者头像 李华
网站建设 2026/4/16 16:45:31

Wan2.2-T2V-A14B能否生成符合WCAG标准的无障碍视频?

Wan2.2-T2V-A14B能否生成符合WCAG标准的无障碍视频&#xff1f; 在数字内容高速迭代的今天&#xff0c;AI生成视频已经不再是实验室里的概念演示&#xff0c;而是切实走进了广告、教育、政务等真实场景。阿里巴巴推出的 Wan2.2-T2V-A14B 模型正是这一浪潮中的代表性成果——它能…

作者头像 李华
网站建设 2026/3/31 4:20:26

AutoUnipus终极指南:U校园全自动答题解决方案完全解析

AutoUnipus终极指南&#xff1a;U校园全自动答题解决方案完全解析 【免费下载链接】AutoUnipus U校园脚本,支持全自动答题,百分百正确 2024最新版 项目地址: https://gitcode.com/gh_mirrors/au/AutoUnipus 还在为U校园的在线习题耗费大量时间而烦恼吗&#xff1f;AutoU…

作者头像 李华
网站建设 2026/4/16 20:30:33

7-Zip ZS:六种现代压缩算法的终极文件处理方案

7-Zip ZS&#xff1a;六种现代压缩算法的终极文件处理方案 【免费下载链接】7-Zip-zstd 7-Zip with support for Brotli, Fast-LZMA2, Lizard, LZ4, LZ5 and Zstandard 项目地址: https://gitcode.com/gh_mirrors/7z/7-Zip-zstd 在当前数字信息时代&#xff0c;文件压缩…

作者头像 李华
网站建设 2026/4/18 2:10:13

Wan2.2-T2V-A14B与Sora的技术路径对比分析

Wan2.2-T2V-A14B与Sora的技术路径对比分析 在生成式AI浪潮席卷内容创作领域的今天&#xff0c;文本到视频生成&#xff08;Text-to-Video, T2V&#xff09;正从实验室走向真实产业场景。无论是影视预演、广告创意&#xff0c;还是虚拟数字人驱动&#xff0c;高质量、可控性强的…

作者头像 李华
网站建设 2026/4/14 13:47:18

革命性分子绘图引擎:Ketcher如何重塑化学结构设计范式

革命性分子绘图引擎&#xff1a;Ketcher如何重塑化学结构设计范式 【免费下载链接】ketcher Web-based molecule sketcher 项目地址: https://gitcode.com/gh_mirrors/ke/ketcher 在当今数字化科研时代&#xff0c;化学结构的可视化与编辑已成为药物研发、材料科学和生物…

作者头像 李华