第6章数组和字符串 主要内容 本章介绍两种常用的数据结构:数组和字符串。数组和字 符串都是引用类型,字符串在存储结构上是字符数组,但 是字符串是内置的类型。 本章还介绍字符串类型及其应用。字符串在程序中几乎是无 处不在的,字符串分为字符串常量和字符串变量两种。字符 象。C#中的sng是CTS的 System iing类的der类的对 串常量是 string类的对象,字符串变量是 String Bi 最后,本章简单地介绍了复合格式化
第6章 数组和字符串 主要内容 本章介绍两种常用的数据结构:数组和字符串。数组和字 符串都是引用类型,字符串在存储结构上是字符数组,但 是字符串是内置的类型。 本章还介绍字符串类型及其应用。字符串在程序中几乎是无 处不在的,字符串分为字符串常量和字符串变量两种。字符 串常量是string类的对象,字符串变量是StringBuilder类的对 象。C#中的string是CTS的System.String类的别名。 最后,本章简单地介绍了复合格式化
61一维数组 ■6.1.1一维数组的声明、创建和初始化 6.11.1声明 声明一个一维数组的格式为:类型名[]数组名; 6.1.1.2创建 数组是引用类型的对象,也需要有实例化,即创建对象的过程。创建一个 维数组有两种方式 第一种方式是针对已经声明了但没有指定长度的数组名,可以用new关键 字创建,同时在方括号[]中用正整数指定数组元素的个数,例如: My Array l=new int 7 第二种方式是将声明和创建同时完成,例如: int MyArray1= new int7 6.1.1.3初始化 维数组的初始化的形式很简单,将初始值依次列于一对大括号之内,注 ,{}内的值,必须和数组类型一致 My Arrayl=new int 3](1, 3, 5)
6.1一维数组 ◼ 6.1.1 一维数组的声明、创建和初始化 6.1.1.1声明 声明一个一维数组的格式为:类型名[ ] 数组名 ; 6.1.1.2创建 数组是引用类型的对象,也需要有实例化,即创建对象的过程。创建一个 一维数组有两种方式: 第一种方式是针对已经声明了但没有指定长度的数组名,可以用new关键 字创建,同时在方括号[ ]中用正整数指定数组元素的个数,例如: MyArray1 = new int [7]; 第二种方式是将声明和创建同时完成,例如:int [] MyArray1 = new int [7]; 6.1.1.3 初始化 一维数组的初始化的形式很简单,将初始值依次列于一对大括号之内,注 意,{}内的值,必须和数组类型一致。 MyArray1 = new int [3]{1,3,5}
61.2访问一维数组元素 可以这么认为,数组是一组同一类型的变量,每个元素是一个 变量,只不过变量名由数组名和数组索引两部分组成。例如: string str Array={"Alan","Bush"," Carol"};∥声明、创建并初 始化 str Arrays="Aden";,∥向数组元素赋值 foreach( string s in str Array Console Writeline(s) string Ss-strArray[1];,∥得数组元素的值 Console. WriteLine(ss) 输出结果是 Aden Bush Carol Bush
6.1.2 访问一维数组元素 可以这么认为,数组是一组同一类型的变量,每个元素是一个 变量,只不过变量名由数组名和数组索引两部分组成。例如: string [] strArray = {"Alan","Bush","Carol"}; //声明、创建并初 始化 strArray[0]="Aden"; //向数组元素赋值 foreach(string s in strArray)Console.WriteLine(s); string ss=strArray[1]; //获得数组元素的值 Console.WriteLine(ss); 输出结果是: Aden Bush Carol Bush
6.2多维数组 ■6.21多维数组的声明、创建和初始化 621.1声明 维数组的声明格式为:类型名[数组名 类型名D,数组名;就是声明三维数组 依此类推,口中n-1个逗号表示声明n维数组。 62.1.2创建 对于已经声明为多维数组但没有创建的数组名,用new表达式创建,例如: int [,]egArray, egArray =new int [2, 2, 2] 可以将声明和创建归并为一句语句,例如:int,] egArray= new int12,2,2 62.1.3初始化 将初始化数据列于{}之内,每维的数据封装在一对{}中,附在new表达式 之后,例如:int,] egArray; egArray= new int[2,2,2]{{0,1},{2,3},{{4,5},{6,7}}
6.2多维数组 ◼ 6.2.1 多维数组的声明、创建和初始化 6.2.1.1声明 二维数组的声明格式为:类型名[,] 数组名; 类型名[,,] 数组名;就是声明三维数组。 依此类推,[]中n-1个逗号表示声明n维数组。 6.2.1.2创建 对于已经声明为多维数组但没有创建的数组名,用new表达式创建,例如: int [,,] egArray; egArray = new int [2,2,2]; 可以将声明和创建归并为一句语句,例如:int [,,] egArray = new int [2,2,2]; 6.2.1.3 初始化 将初始化数据列于{}之内,每维的数据封装在一对{}中,附在new表达式 之后,例如:int [,,] egArray; egArray = new int [2,2,2]{{{0,1},{2,3}},{{{4,5},{6,7}}};
622访问多维数组元素 下面的程序段显示了多维数组的声明、创建、初始化和元素访 问的各个语法现象。 int LAA, BB; AA=new int[2, 21 for (int 1=0 K<=1; i++) 用二重循环遍历二维数组 for (int j=0 j<=1; j++ fAALJF1*10+]; Console. Writeline(AA[,);) BB=AA BB[0,0]=2*BB[121] Console. WriteLine("bb[0,0](0 BB[, 1=(1", BB[0,0],BBll,ID) 输出结果: 0 10 BB[O,0=22BB[1,1]=11
6.2.2 访问多维数组元素 下面的程序段显示了多维数组的声明、创建、初始化和元素访 问的各个语法现象。 int [,] AA, BB;AA=new int[2,2]; for (int i=0;i<=1;i++) //用二重循环遍历二维数组 for (int j=0;j<=1;j++) { AA[i,j]=i*10+j; Console.WriteLine(AA[i,j]);} BB=AA; BB[0,0] = 2 * BB[1,1]; Console.WriteLine("BB[0,0]={0} BB[1,1]={1}",BB[0,0],BB[1,1]); 输出结果: 0 1 10 11 BB[0,0]=22 BB[1,1]=11