对象类型: 可以通过class创建一个对象类型
基本类型:int float string等int a = 10;
使用 / r换行的时候Console.Write(); 后面不要加Line
字符串创建的方法
1.字面量创建方式:
这个是最简单的创建方式 建议使用一种方式
string s1 = "Hello Word";//这个是最基本的字符串类型2.字符串中有特殊的符号
\n 这个是换行; \t tab键l \r 这个是回车; \s space 这个是空格,"\"也是一个特殊字符
\r的意思是将光标移动回去当前行的行首,但是不换到新的行。
string s2 = "翩若惊鸿,\n 婉\t 若惊龙\r"; Console.Write(s2); //要求字符串显示\n 需要对特殊符号进行转意处理 操作方式是在\前面再加一个\。 string s3 = "翩若惊鸿,\\n 婉\\t 若惊龙\\r"; Console.Write(s3);3.常用的符号@ 使用@符号创建字符串
string s4 = @"\n\r\t可以支持换行 word name change “”"; Console.WriteLine(s4); //string sss = "E:\传鼎智能\\课堂\2025.12.5课堂笔记"; 加一个\ 字符串类型报错 //string sss = "E:\\传鼎智能\\课堂\\2025.12.5课堂笔记"; 加两个\\ 修改 加上转义符号 string sss = @"E:\传鼎智能\课堂\2025.12.5课堂笔记"; //可以使用@保留\ Console.WriteLine(sss);4.字符串创建的方式
//字符使用单引号 //char[] char数组 char[] chars = new char[] { '老', '头', '乐' };//创建一个字符数组 string str5=new string(chars); Console.WriteLine(str5);5.使用$符号进行格式化
double gz = 100000; double age = 10; string str6 = $"工资{gz},年龄{age}"; Console.WriteLine(str6);6.字符串的一些属性
//char 是单个字符 取一个的时候用 string str7 = "你爱我我爱你蜜雪冰城甜秘密"; Console.WriteLine(str7.Length);//获取字符串长度 Console.WriteLine(str7[str7.Length-2]);//减去1个字符 //也可以遍历字符串 for (int i = 0; i < str7.Length; i++) { char c = str7[i]; Console.WriteLine(c); }字符串常用的方法
IndexOf
1 IndexOf() 这个方法是在字符串(string str)中获取当中的索引值
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地方开始搜索参数1LastIndexOf
2 LastIndexOf() 这个方法是从后往前找,找出第一个与之匹配的字符
Console.WriteLine(str.LastIndexOf('a'));//结果为7IndexOfAny
3 IndexOfAny() 这个方法是从字符数组这个范围内找任何一个对应的索引值
Console.WriteLine(str.IndexOfAny(new char[] { 'c','b','a'}));//结果为0LastIndexOfAny
4 LastIndexOfAny() 这个方法是从后往前找,找到范围当中其中一个的索引值
Console.WriteLine(str.LastIndexOfAny(new char[] { 'c', 'b' }));//结果为9Contains
5 重点 Contains() 是否包含参数
Console.WriteLine(str.Contains("fg"));//包含到了字符串中的参数结果为true Console.WriteLine(str.Contains("he"));//没有包含到所以为falseToUpper
6 重点 ToUpper() 这个方法是把字符串转成大写的
Console.WriteLine(str.ToUpper());ToLower
7 重点 ToLower() 这个方法是把字符串转成小写的
Console.WriteLine(str.ToLower());StartsWith
8 .StartsWith() 这个方法是判断字符串是否是参数进行开头的,只要其中一个字包含就是true
string str2 ="张三是师傅";
Console.WriteLine(str2.StartsWith("张三"));//true Console.WriteLine(str2.StartsWith("李四"));//flaseEndsWith
9 EndsWith() 这个方法是判断是不是以xxx结尾
Console.WriteLine(str2.EndsWith("师傅"));//trueIsNullOrEmpty
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));//flaseEquals
11 Equals() 这个方法是判断两个字符串是否相等 对象比较的时候不要使用==来进行比较
//如果比较两个对象的时候尽量使用Equals()方法
Console.WriteLine(string.Equals(str,str2));//flaseJoin
12 Join() 这个方法是把指定的分隔符号添加到对应的字符串之间
Console.WriteLine(string.Join("-", str2,"aa"));//张三是师傅-aaSubstring
13 重点 Substring() 这个方法是截取字符串从索引值为1开始,截取三个长度的字符
Console.WriteLine(str2.Substring(1,3));//三大师Split
14 重点 Split() 这个方法是按照指定的符号进行分割字符串
string str4 = "2025/12/10"; //可以按照/进行分割,分割成三部分,三部分都放到一个数组里面
Console.WriteLine(str4); string[] ss = str4.Split('/');//结果就是一个数组 Console.WriteLine(ss[0]);//2025 Console.WriteLine(ss[1]);//12 Console.WriteLine(ss[2]);//10Concat
15 重点 Concat() 这个方法是拼接字符串
Console.WriteLine(string.Concat(str2, str4));//张三大师傅2005/12/10CopyTo
16 CopyTo() 从源字符的参数1索引开始赋值,赋值到参数2数组里面,放到目标数组的索引值为参数3地方,复制参数4个元素
char[] s1=new char[15];//定义一个字符数组长度为15 str4.CopyTo(1,s1,4,5); for (int i = 0; i < s1.Length; i++) { Console.WriteLine(s1[i]+"--------"); }Remove
//17 重点 Remove 这个方法是删除字符,从参数2开始删除,删除参数5个数,返回结果是剩余其他的字符
Console.WriteLine(str.Remove(1));//只保留一个参数删除后面其他的字符 Console.WriteLine(str.Remove(2,5));Replace
18 Replace() 这个方法是用参数2替换参数1
Console.WriteLine(str4.Replace("2025","2026"));Format
19 Format() 这个方法是字符串格式化
string name = "张三"; double gz = 10000; Console.WriteLine(string.Format("姓名{0};工资{1}",name,gz)); Console.WriteLine(string.Format("{0:c4}",gz));//¥10,000.0000 c4的意思是保留4位小数ToCharArray
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 StartsWith()
* 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};//创建已经添加数组的元素2 定义可以带数组的长度
string[] strs = new string[6];//长度为6的字符串数组3可以定义带初始元素和长度
char[] chars = new char[6] { 'A', 'A', 'A', 'A', 'A', 'A'};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+"?"); }int[] 一维数组
数组包含: 一维数组、多维数组、交错数组