版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1本课介绍本课介绍C#C#语言的变量与数据类型。语言的变量与数据类型。本课主要介绍以下内容:本课主要介绍以下内容:C#C#的内置数据类型的内置数据类型常量与变量的使用常量与变量的使用编写表达式编写表达式枚举类型枚举类型调试工具的使用调试工具的使用异常处理异常处理2预定义类型预定义类型定义定义字节数字节数byte0255之间的整数之间的整数1sbyte-128127之间的整数之间的整数1short-3276832767之间的整数之间的整数2ushort065535之间的整数之间的整数2int-21474836482147483647之间的整数之间的整数4uint04294967295之间的整数之
2、间的整数4long-9223372036854775808 9223372036854775807之之间的整数间的整数8ulong0188446744073709551615之间的整数之间的整数83预定义类型预定义类型定义定义字节数字节数bool逻辑值:逻辑值:true和和false1float单精度浮点值单精度浮点值4double双精度浮点值双精度浮点值8decimal精确的十进制值,有精确的十进制值,有28个有效位个有效位16object其它所有类型的基类型其它所有类型的基类型不定不定char065535之间的之间的Unicode字符字符2string任意长度的任意长度的Unicode字符
3、串字符串不定不定可参考教材可参考教材P194q整数类型:整数类型:整数类型又有有符号整数与无符号整数。有符号整数可以整数类型又有有符号整数与无符号整数。有符号整数可以带正负号,无符号整数不需带正负号,默认为正数。带正负号,无符号整数不需带正负号,默认为正数。有符号整数包括有符号整数包括sbytesbyte(符号字节型)、(符号字节型)、shortshort(短整型)、(短整型)、intint(整型)、(整型)、longlong(长整型)。(长整型)。无符号整数包括无符号整数包括bytebyte(字节型)、(字节型)、ushortushort(无符号短整(无符号短整型)、型)、uintuint(
4、无符号整型)、(无符号整型)、ulongulong(无符号长整型)。(无符号长整型)。5q实数类型实数类型 实数类型包括实数类型包括floatfloat(单精度浮点型)、(单精度浮点型)、doubledouble(双精度浮点(双精度浮点型)、型)、decimaldecimal(十进制型)。(十进制型)。6qcharchar(字符型)(字符型) charchar(字符型):数据范围是(字符型):数据范围是0 06553565535之间的之间的UnicodeUnicode字符集字符集中的单个字符,占用中的单个字符,占用2 2个字节。个字节。 charchar(字符型)表示无符号(字符型)表示无符号
5、1616位整数,位整数,charchar(字符型)的可能(字符型)的可能值集与值集与UnicodeUnicode字符集相对应。字符集相对应。qstringstring(字符串型)(字符串型) stringstring(字符串型):指任意长度的(字符串型):指任意长度的UnicodeUnicode字符序列,占用字符序列,占用字节根据字符多少而定。字节根据字符多少而定。 stringstring(字符串型)表示包括数字与空格在内的若干个字符序(字符串型)表示包括数字与空格在内的若干个字符序列,允许只包含一个字符的字符串,甚至可以是不包含字符的列,允许只包含一个字符的字符串,甚至可以是不包含字符的空
6、字符串。空字符串。7q布尔类型和对象类型布尔类型和对象类型 boolbool(布尔型):表示布尔逻辑量。(布尔型):表示布尔逻辑量。boolbool(布尔型)数据范围(布尔型)数据范围是是“true”true”(真)和(真)和“false”false”(假)。(假)。boolbool(布尔型)占用(布尔型)占用一个字节。一个字节。boolbool(布尔型)的值(布尔型)的值“true”true”(真)和(真)和“false”false”是关键字。是关键字。qobjectobject(对象型):(对象型): 可以表示任何类型的值,其占用字节视具体表示的数据类型而可以表示任何类型的值,其占用字节视
7、具体表示的数据类型而定。定。 objectobject(对象型)是所有其他类型的最终基类。(对象型)是所有其他类型的最终基类。C#C#中的每种类中的每种类型都是直接或间接从型都是直接或间接从objectobject类型派生的。类型派生的。8q变量的使用必须先声明再使用,对比:变量的使用必须先声明再使用,对比:VBScript 等脚本语言可以直接使用变量,无需声明;等脚本语言可以直接使用变量,无需声明;C/C+ 等语言和等语言和 C# 一样必须先声明再使用;一样必须先声明再使用;q遇到没有见过的预定义类型如何使用?遇到没有见过的预定义类型如何使用?参考参考 MSDN(Microsoft Deve
8、loper Network)中的信息和样例代码。中的信息和样例代码。9声明声明 指定类型指定类型 指定变量名指定变量名 以分号结束以分号结束int numberOfVisitors;初始化变量初始化变量 使用赋值运算符使用赋值运算符 (=) 指定值指定值 以分号结束以分号结束赋值赋值 附加后缀附加后缀decimal deposit = 100M;string bear;string bear = Grizzly;10q变量命名规则变量命名规则变量名的第一个字符必须是字母(包括汉字)或下划线,变量名的第一个字符必须是字母(包括汉字)或下划线,其余字符必须是字母(包括汉字)、数字或下划线;其余字符
9、必须是字母(包括汉字)、数字或下划线;变量名不能是变量名不能是C#C#的关键字或库函数名。例如,的关键字或库函数名。例如,sumsum,_S_S,都,都是合法的变量名,而是合法的变量名,而intint,2A2A,Number Of StudentNumber Of Student是非法是非法变量名。如果实在用使用关键字,可在关键字前加变量名。如果实在用使用关键字,可在关键字前加”11q如何命名变量?如何命名变量?给变量分配有意义的名称;给变量分配有意义的名称;使用大小写混合方案。该方案要求变量名的首字母小写,使用大小写混合方案。该方案要求变量名的首字母小写,变量名中每个单词的首字母大写。如变量
10、名中每个单词的首字母大写。如newAccountBalance虽然虽然C#区分大小写,但是不要仅仅通过大小写的不同来区区分大小写,但是不要仅仅通过大小写的不同来区分不同的变量。如分不同的变量。如Sum和和sum的同时使用。的同时使用。12q整形常量整形常量 整型常量即整数,整型常量有三种形式:整型常量即整数,整型常量有三种形式: 十进制形式,即通常意义上的整数,如,十进制形式,即通常意义上的整数,如,123,48910等。等。 八进制形式,输入八进制整型常量,需要在数字前面加八进制形式,输入八进制整型常量,需要在数字前面加“0”,如,如,0123等。等。 十六进制形式,输入十六进制整型常量,需
11、要在数字前面加十六进制形式,输入十六进制整型常量,需要在数字前面加“0 x”或或“0X”,如,如,0 x123等。等。 13q实型常量实型常量 实型常量即带小数的数值,实型常量有两种表示形式:实型常量即带小数的数值,实型常量有两种表示形式: 小数形式小数形式,即人们通常的书写形式,如,即人们通常的书写形式,如0.123,12.3,.123等等。等等。 指数形式指数形式,也叫科学记数,由底数加大写的,也叫科学记数,由底数加大写的E或小写的或小写的e加指数加指数组成,例如,组成,例如,123e5或或123E5都表示都表示123105。14q字符常量字符常量 字符常量表示单个的字符常量表示单个的Un
12、icode字符集中的一个字符,通常包括字符集中的一个字符,通常包括数字、各种字母、标点、符号和汉字等。数字、各种字母、标点、符号和汉字等。 字符常量用一对英文单引号界定,如,字符常量用一对英文单引号界定,如,A,a,+,汉汉 等等。等等。 在在C#中,有些字符不能直接放在单引号中作为字符常量,这时中,有些字符不能直接放在单引号中作为字符常量,这时需要使用转义符来表示这些字符常量,转义符由反斜杠需要使用转义符来表示这些字符常量,转义符由反斜杠“”加加字符组成,如字符组成,如 n 。15q字符串常量字符串常量 字符串常量是由一对双引号界定的字符序列,例如:字符串常量是由一对双引号界定的字符序列,例
13、如: 欢迎使用欢迎使用C#! I am a student. 需要注意的是,即使由双引号界定的一个字符,也是字符串常需要注意的是,即使由双引号界定的一个字符,也是字符串常量,不能当做字符常量看待,例如,量,不能当做字符常量看待,例如,A与与“A”,前者是字符,前者是字符常量,后者是字符串常量。常量,后者是字符串常量。q 布尔常量布尔常量 布尔常量即布尔值本身,如前所述,布尔值布尔常量即布尔值本身,如前所述,布尔值true(真)和(真)和false(假)是(假)是C#的两个关键字。的两个关键字。16符号常量使用符号常量使用constconst关键字定义,格式为:关键字定义,格式为: const
14、const 类型名称类型名称 常量名常量名= =常量表达式常量表达式; ; “ “常量表达式常量表达式”的意义在于该表达式不能包含变量及的意义在于该表达式不能包含变量及函数等值会发生变化的内容。常量表达式中可以包含函数等值会发生变化的内容。常量表达式中可以包含其他已定义常量。其他已定义常量。17使用使用 const const 关键字以及该常量值的类型来声明关键字以及该常量值的类型来声明一个常量一个常量 声明常量时必须对其赋值声明常量时必须对其赋值 /地球的半径为地球的半径为6378kmconst int earthRadius = 6378;/到太阳的平均距离为到太阳的平均距离为149600
15、000kmconst long meanDistanceToSun = 149600000L;/平均轨道速度是平均轨道速度是29.79km/s const double meanOrbitalVelocity = 29.79D;参见教材参见教材P1518 数据类型的转换有隐式转换与显式转换两种。数据类型的转换有隐式转换与显式转换两种。q隐式转换隐式转换 隐式转换是系统自动执行的数据类型转换。隐式转换是系统自动执行的数据类型转换。 隐式转换的基本原则是允许隐式转换的基本原则是允许数值范围小的类型向数值范数值范围小的类型向数值范围大的类型转换围大的类型转换,允许,允许无符号整数类型向有符号整数无符
16、号整数类型向有符号整数类型转换类型转换。19q显式类型转换显式类型转换 显式转换也叫强制转换,是在代码中明确指示将某一类型的数显式转换也叫强制转换,是在代码中明确指示将某一类型的数据转换为另一种类型。显式转换的一般格式为:据转换为另一种类型。显式转换的一般格式为: ( (数据类型名称数据类型名称) )数据数据 例如:例如: int x=600; short z=(short)xint x=600; short z=(short)x; ; 显式转换中可能导致数据的丢失,例如:显式转换中可能导致数据的丢失,例如: decimal d=234.55M; int x=(int)ddecimal d=2
17、34.55M; int x=(int)d; ;(取整数部分)(取整数部分)20qParseParse方法方法 ParseParse方法可以将特定格式的字符串转换为数值。方法可以将特定格式的字符串转换为数值。ParseParse方法的方法的使用格式为:使用格式为: 数值类型名称数值类型名称.Parse(.Parse(字符串型表达式字符串型表达式) ) 例如:例如:intint x=int.Parse(123); x=int.Parse(123); qToStringToString方法方法 ToStringToString方法可将其他数据类型的变量值转换为字符串类型。方法可将其他数据类型的变量值
18、转换为字符串类型。ToStringToString方法的使用格式为:方法的使用格式为: 变量名称变量名称.ToString.ToString( )( ) 例如:例如:int x=123; string s=x.ToStringint x=123; string s=x.ToString( );( ); 21qConvertConvert类类 返回与指定类型等效的值,如:返回与指定类型等效的值,如: double d1=23.5;double d1=23.5; string s=“123”; string s=“123”; int int x=Convert.ToInt32(s); / x=Co
19、nvert.ToInt32(s); /返回值返回值123123 x=Convert.ToInt32(d1); / x=Convert.ToInt32(d1); /返回值返回值2323 bool y=Convert.ToBoolean(x bool y=Convert.ToBoolean(x); /); /返回返回truetrue string s2=System.Convert.ToString(d1); / string s2=System.Convert.ToString(d1); /返回返回“23.5”23.5”22用户从键盘上输入整数,之后点击相乘按钮,将用户从键盘上输入整数,之后点击
20、相乘按钮,将计算它们的积。计算它们的积。2324q异常处理异常处理 异常:表示在应用程序执行期间发生的错误。异常:表示在应用程序执行期间发生的错误。 格式:格式:try可能运行期间出错的语句;可能运行期间出错的语句;catch (异常类型异常类型)处理异常的语句处理异常的语句;finally始终要执行的语句,用于清理资源;始终要执行的语句,用于清理资源;25qcheckedchecked和和uncheckedunchecked运算符运算符checkedchecked,检测是否发生溢出,如果发生则产生,检测是否发生溢出,如果发生则产生System.OverflSystem.OverflowExc
21、eptionowException异常。异常。uncheckedunchecked,将忽略溢出。,将忽略溢出。26q在文本框中输入一个字符,点击判断按钮检查输入的在文本框中输入一个字符,点击判断按钮检查输入的是否是字母或数字。是否是字母或数字。2728qchar.IsLetterchar.IsLetter方法方法 用于判断输入的参数是否为一个字母用于判断输入的参数是否为一个字母。qchar.IsDigitchar.IsDigit方法方法 用于判断输入的参数是否为一个数字。用于判断输入的参数是否为一个数字。qcharchar类型与值类型的转换类型与值类型的转换 charchar类型可以隐式转换为
22、一个值类型,但值类型不能隐式转换类型可以隐式转换为一个值类型,但值类型不能隐式转换为为charchar类型。类型。 如:如:intint i=6; char ch1=A; i=6; char ch1=A; int int j=ch1; / j=ch1; /没问题没问题 ch1=I; /ch1=I; /错错, ,需要显式转换(需要显式转换(charchar)i i 29qStringString与与stringstring的区别的区别 stringstring是是c#c#中的类,中的类,StringString是是.net F Framework的类的类( (在在c# IDEc# IDE中不会显
23、示蓝色中不会显示蓝色) ) c# string c# string映射为映射为.net F Framework的的StringString 所以,这两种写法具有相同的含义。所以,这两种写法具有相同的含义。 30编写编写一一个贷个贷款款计数计数器程序,器程序,对对于特定的于特定的贷贷款款数数量、年量、年利率和利率和贷贷款周期,款周期,计计算月付款和算月付款和总总付款付款. . 计计算月付款的公式算月付款的公式为为:月付款:月付款=P=P* *r/(1-(1+r) r/(1-(1+r) -n-n) ),p p为贷为贷款金款金额额,r r为为月利率月利率( (年利率除以年利率除以12)12),以,以
24、0 0到到1 1之之间间的的数数。N N为还为还完完贷贷款需要的款需要的时间时间(以月(以月为单为单位)。位)。3132q格式化输出格式化输出 一般使用一般使用String.FormatString.Format方法格式化输出信息,格式:方法格式化输出信息,格式: String.Format(formatsString.Format(formats, ,参数列表参数列表);); formats formats为包含一个或多个格式规范为包含一个或多个格式规范N,M:SnN,M:Sn 的字符串,的字符串,String.String.FormatFormat方法返回字符串。方法返回字符串。 在在N,
25、M:SnN,M:Sn 中,中,N N式从零开始的整数,指示要格式化的参数式从零开始的整数,指示要格式化的参数, ,0 0表示第一个参数。表示第一个参数。M M是整数(可选)指示包含格式化值的区域的是整数(可选)指示包含格式化值的区域的宽度,宽度,M M为负号左对齐,否则为右对齐。为负号左对齐,否则为右对齐。S S为格式字符为格式字符( (可选可选),n),n为为整数整数( (可选可选),),指定小数位数。指定小数位数。33 列如:4,16:C表示第5个参数,格式化值的区域宽度为16,右对齐,格式字符为货币符号,即将字符串表示为一个货币值。34运算符就是表达式中的符号运算符就是表达式中的符号增增
26、 / 减减算术算术关系关系相等相等条件条件赋值赋值 + -* / % + - = != & | ! ?: = *= /= %= += -= = &= = |= 35 尽管尽管+ +、- -、* *和和/ /这些运算符的意义和数学上的这些运算符的意义和数学上的运算符是一样的。但是在一些特殊的环境下,有一运算符是一样的。但是在一些特殊的环境下,有一些特殊的解释。些特殊的解释。 首先,当对整数进行首先,当对整数进行“/”/”运算时,余数都被舍运算时,余数都被舍去了。去了。 例如,例如,10/310/3在整数除法中等于在整数除法中等于3 3。 可以通过模运算符可以通过模运算符% %来获
27、得这个除法的余数。运来获得这个除法的余数。运算符算符% %可以应用于可以应用于整数整数和和浮点类型浮点类型,例如,例如,10%310%3的的结果是结果是1 1,10.0%3.010.0%3.0的结果也是的结果也是1 1。36C#还有两种特殊的算术运算符:+(自增运算符)和-(自减运算符),其作用是使变量的值自动增加1或者减少1。自增和自减运算符既可以在操作数前面(前缀),也可以在操作数后在(后缀),例如可以被写成 +x; /前缀格式 或者 x+; /后缀格式37比如下面的例子:比如下面的例子: x=16;x=16; y=+x; y=+x; 在这种情况下,在这种情况下,y y被赋值为被赋值为17
28、17,但是,如果代码如下,但是,如果代码如下所写:所写: x=16;x=16; y=x+; y=x+; 那么那么y y被赋值为被赋值为1616。在这两种情况下,。在这两种情况下,x x都被都被赋值为赋值为1717,不同之处在于发生的时机。自增运算符和,不同之处在于发生的时机。自增运算符和自减运算符发生的时机有非常重要的意义。自减运算符发生的时机有非常重要的意义。38 赋值运算符用于将一个数据赋予一个变量,赋值操作赋值运算符用于将一个数据赋予一个变量,赋值操作符的左操作数必须是一个变量,赋值结果是将一个新的数符的左操作数必须是一个变量,赋值结果是将一个新的数值存放在变量所指示的内存空间中。如,值
29、存放在变量所指示的内存空间中。如,“=”=”类类 型型符符 号号说说 明明简单赋值运算符简单赋值运算符= =x=1x=1复合赋值运算符复合赋值运算符+=+=x+=1x+=1等价于等价于x=x+1x=x+1-=-=x-=1x-=1等价于等价于x=x-1x=x-1* *=1=1x x* *=1=1等价于等价于x=xx=x* *1 1/=/=x/=1x/=1等价于等价于x=x/1x=x/1%=%=x%=1x%=1等价于等价于x=x%1x=x%1赋值运赋值运算符算符39 关系运算符用于在程序中比较两个值的大小,关系运算符用于在程序中比较两个值的大小,关系运算的结果类型是布尔型,也就说,结果不关系运算的
30、结果类型是布尔型,也就说,结果不是是truetrue就是就是falsefalse。 一个关系运算符两种的运算对象如果是数值类一个关系运算符两种的运算对象如果是数值类型的对象,则比较的是两个数的大小;如果是字型的对象,则比较的是两个数的大小;如果是字符型对象,则比较的是两个字符的符型对象,则比较的是两个字符的UnicodeUnicode编码的编码的大小,比如:字符大小,比如:字符x x的的UnicodeUnicode编码小于编码小于y y,则关系,则关系表达式表达式xyx 大于大于布尔型。如果条布尔型。如果条件成立,结果为件成立,结果为truetrue,否则结果,否则结果为为false fals
31、e 2 236,x2,ba36,x2,ba 小于小于3.143,xy3.143,x=大于等于大于等于3.26=b3.26=b=小于等于小于等于PI=3.1416PIj)!(ij)&逻辑与逻辑与2 2xy&xxy&x00|逻辑或逻辑或2 2xy|xxy|x00表表 C#C#的的逻辑运逻辑运算符算符42 条件运算符由条件运算符由“?”?”和和“:”:”组成,条件运算符是组成,条件运算符是一个三元运算符。条件运算符的一般格式为:一个三元运算符。条件运算符的一般格式为: 操作数操作数1 ? 1 ? 操作数操作数2 : 2 : 操作数操作数3 3 其中操作数其中操作数1 1的值必
32、须为布尔值。进行条件运算时,的值必须为布尔值。进行条件运算时,首先判断问号前面的布尔值是首先判断问号前面的布尔值是truetrue还是还是falsefalse,如果,如果是是truetrue,则条件运算表达式的值等于操作数,则条件运算表达式的值等于操作数2 2的值;的值;如果为如果为falsefalse,则条件表达式的值等于操作数,则条件表达式的值等于操作数3 3的值。的值。 例如条件表达式例如条件表达式“68?15+a:39”68?15+a:39”,由于,由于6868的值的值为为falsefalse,所以整个表达式的值是,所以整个表达式的值是3939。43(1)(1)字符串连接符(字符串连接
33、符(+ +) 字符串连接是最常用的字符串运算。所谓字符串的连接,字符串连接是最常用的字符串运算。所谓字符串的连接,就是将两个字符串连接在一起,形成新的字符串。就是将两个字符串连接在一起,形成新的字符串。C#C#提供了字提供了字符串连接运算符符串连接运算符“+”+”,用于连接两个字符串。比如:,用于连接两个字符串。比如: “ “abc”+“efgabc”+“efg” ” 结果是结果是abcefgabcefg “36812”+“3.14” “36812”+“3.14” 结果是结果是368123.14368123.14 12+“34” 12+“34”44(2) is(2) is运算符运算符 isis
34、运算符用于检查表达式是否是指定的类型,如果是,运算符用于检查表达式是否是指定的类型,如果是,结果为结果为truetrue,否则结果为,否则结果为falsefalse。 例如:例如: intint k=2; k=2; bool isTest=k is int; /isTest bool isTest=k is int; /isTest=true=true45(3) sizeof(3) sizeof运算符运算符 sizeofsizeof运算符获得值类型数据在内存占用的字节数。运算符获得值类型数据在内存占用的字节数。sizeofsizeof运算符的使用方法如下:运算符的使用方法如下: sizeofs
35、izeof( (类型标识符类型标识符) ) 它的结果是一个整数,这个整数代表字节数。比它的结果是一个整数,这个整数代表字节数。比如:如: sizeof(intsizeof(int) /) /结果是结果是4 4。因为每个。因为每个intint型变量型变量占用占用4 4个字节。个字节。46(4) typeof(4) typeof运算符运算符 typeoftypeof运算符用于获得一个对象的类型。运算符用于获得一个对象的类型。public class uuu public int a, b; public double c, d; public void f1() public void f2()
36、47static void Main() Type t = typeof(uuu); Console.WriteLine(Methods:); MethodInfo methodInfo = t.GetMethods(); foreach (MethodInfo mInfo in methodInfo) Console.WriteLine(mInfo.ToString(); Console.ReadLine(); 48(5) (5) checkedchecked和和uncheckedunchecked运算符运算符 这两个运算符用于控制整数算术运算中当前环境的溢出情况。这两个运算符用于控制整数算
37、术运算中当前环境的溢出情况。checkedchecked用于检测某些操作的溢出条件,下面代码试图分配不用于检测某些操作的溢出条件,下面代码试图分配不符合符合shortshort变量范围的值,引发系统错误:变量范围的值,引发系统错误: short val1=20000, val2=20000;short val1=20000, val2=20000; short myshort short myshort=checked(short)(val1+val2); =checked(short)(val1+val2); /出现错误出现错误 借助于借助于unchekeduncheked运算符,就可以保证
38、即使溢出,也会忽略错运算符,就可以保证即使溢出,也会忽略错误,接受结果,例如:误,接受结果,例如: short val1=20000, val2=20000;short val1=20000, val2=20000; short myshort short myshort=unchecked(short)(val1+val2); /=unchecked(short)(val1+val2); / /出现错误,出现错误, /但是被忽略但是被忽略49q按照运算符的优先级计算表达式按照运算符的优先级计算表达式q可以使用圆括号控制运算的顺序可以使用圆括号控制运算的顺序q左结合和右结合左结合和右结合 所有
39、二元运算符都是左结合的所有二元运算符都是左结合的 赋值运算符和条件运算符是右结合的赋值运算符和条件运算符是右结合的 (10 + 20) / 5 结果是结果是 610 + (20 / 5) 结果是结果是 1410 + 20 / 5结果是结果是 1450q编写程序把用户输入的字符串转换为新字符串,在指编写程序把用户输入的字符串转换为新字符串,在指定字符串的所有元音字母前增加定字符串的所有元音字母前增加”egg”egg”单词。单词。5152q声明对象声明对象 格式:格式: 类名类名 对象名;对象名; 如:如: string inputStringstring inputString; ;q创建对象创
40、建对象 格式:格式: new new 类名类名( (参数列名参数列名) ) 如如:inputString:inputString=new string(123.ToCharArray()=new string(123.ToCharArray();); inputString inputString=“123”;=“123”; inputString inputString=new string(“123”); /=new string(“123”); /错的错的53q消息的传送(即,访问对象中的方法和属性)消息的传送(即,访问对象中的方法和属性) 格式:对象名格式:对象名. .方法名(参数列表
41、)方法名(参数列表) 对象名对象名. .属性名属性名= =表达式表达式qstringstring类的属性类的属性 可以将可以将stringstring类型的值看成是一个字符数组,因此类型的值看成是一个字符数组,因此stringstring类具类具有有lengthlength属性,返回字符的个数。如,属性,返回字符的个数。如, inputString.lengthinputString.length 也可以通过下标来访问其中的某一个字符,如也可以通过下标来访问其中的某一个字符,如 char c=inputString2;char c=inputString2;54q连接连接stringstrin
42、g对象对象 使用使用”+”+”号来连接两个号来连接两个stringstring对象。如,对象。如, string s=“123”+”456” /sstring s=“123”+”456” /s为为123456123456q逐字字符串常数逐字字符串常数 逐字字符串常数以逐字字符串常数以 开头,后跟一对双引号,在双引开头,后跟一对双引号,在双引号中放入字符。如:号中放入字符。如:“计算机计算机” 逐字字符串常数同常规字符串常数的区别在于,在逐逐字字符串常数同常规字符串常数的区别在于,在逐字字符串常数的双引号中,每个字符都代表其最原始字字符串常数的双引号中,每个字符都代表其最原始的意义,在逐字字符串
43、常数中没有转义字符。唯一的的意义,在逐字字符串常数中没有转义字符。唯一的例外是,如果要包含双引号(),就必须在一行中例外是,如果要包含双引号(),就必须在一行中使用两个双引号()。使用两个双引号()。55string str4=hello t world; /hello worldstring str4=hello t world; /hello worldstring str5= hello t world; /hello t worldstring str5= hello t world; /hello t worldstring str6=“He said Hello to you; s
44、tring str6=“He said Hello to you; /He said Hello to you /He said Hello to youstring str7=“He said Hello to you;string str7=“He said Hello to you; /He said Hello to you /He said Hello to you56qStringString类中的方法类中的方法int IndexOf(charint IndexOf(char value): value):查找查找valuevalue的位置的位置int IndexOf(char v
45、alue ,int startIndexint IndexOf(char value ,int startIndex):):从从startIndexstartIndex位位置开始查找置开始查找valuevalue的位置的位置lastIndexOf(string value ,int startIndexlastIndexOf(string value ,int startIndex):):从从startIndexstartIndex开始查找最后一次出现开始查找最后一次出现valuevalue的位置。的位置。String Substring(int startIndexString Substr
46、ing(int startIndex):):返回从返回从startIndexstartIndex开始开始的子字符串的子字符串String Substring(int startIndex,intString Substring(int startIndex,int length): length):返回从返回从starstartIndextIndex位置开始长度为位置开始长度为lengthlength的子字符串的子字符串String Trim():String Trim():移除字符串前后的空白字符。移除字符串前后的空白字符。57q枚举枚举 枚举类型是用户自定义的数据类型,是一种允许用符号枚举
47、类型是用户自定义的数据类型,是一种允许用符号代表数据的值类型。枚举是指程序中某个变量具有一组确定的代表数据的值类型。枚举是指程序中某个变量具有一组确定的值,通过值,通过“枚举枚举”可以将其值一一列出来。这样,使用枚举类可以将其值一一列出来。这样,使用枚举类型,就可以将一年的四季分别用符号型,就可以将一年的四季分别用符号SpringSpring、SummerSummer、AutumnAutumn和和WinterWinter来表示,将一个星期的来表示,将一个星期的7 7天分别用符号天分别用符号MondayMonday、TuesdTuesdayay、WednesdayWednesday、Thursd
48、ayThursday、FridayFriday、SaturdaySaturday和和SundaySunday来表来表示,有助于用户更好地阅读和理解程序。示,有助于用户更好地阅读和理解程序。58q枚举的定义枚举的定义定义枚举类型时必须使用定义枚举类型时必须使用enumenum关键字,其一般语法形式如下:关键字,其一般语法形式如下: enumenum 枚举名枚举名 枚举成员表枚举成员表; 说明:说明: 声明枚举类型时,必须带上声明枚举类型时,必须带上enumenum关键字。关键字。 枚举名必须是枚举名必须是C#C#中合法的标识符。中合法的标识符。 枚举类型中定义的所有枚举值都默认为整型。枚举类型中
49、定义的所有枚举值都默认为整型。 由一对花括号由一对花括号“”和和“”括起来的部分是枚举成员括起来的部分是枚举成员表,枚举成员通常用用户易于理解的标识符字符串表示,它们表,枚举成员通常用用户易于理解的标识符字符串表示,它们之间用逗号隔开。之间用逗号隔开。 与定义结构类型一样在花括号与定义结构类型一样在花括号“”后,可后,可以选择带或不带以选择带或不带“;”;”符号。符号。59下面是一个定义枚举类型的例子:下面是一个定义枚举类型的例子: enum WeekDay Sun, Mon, Tue, Wed, Thu, Fri, Sat; 上面的语句中定义了一个名称为上面的语句中定义了一个名称为WeekD
50、ay的枚举类型,它包的枚举类型,它包含含Sun、 Mon、 Tue、 Wed、 Thu、 Fri、 Sat这这7个枚举成员。个枚举成员。有了上述定义,有了上述定义,WeekDay本身就成了一个类型说明符,此后就本身就成了一个类型说明符,此后就可以像常量那样使用这些符号。两个枚举成员名不能完全相同。可以像常量那样使用这些符号。两个枚举成员名不能完全相同。 60q给枚举成员赋值给枚举成员赋值在定义的枚举类型中,每一个枚举成员都有一个相对应的常量在定义的枚举类型中,每一个枚举成员都有一个相对应的常量值,如值,如 enum WeekDayenum WeekDay Sun, Mon, Tue, Wed, Thu, Fri, Sa Sun, Mon, Tue, Wed, Thu, Fri, Sat;t;中,其枚举成员中,其枚举成员Sun
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年前厅服务员5S管理考核试卷及答案
- 2026年贵州省基层公共基础知识考试试题库(附含答案)
- 2026年高级水育考试题及答案
- 2025年艺术线上考试题库及答案
- 2026年医用器材行业分析报告及未来发展趋势报告
- 2026年云计算软件行业分析报告及未来发展趋势报告
- 2026年电子材料细分产品行业分析报告及未来发展趋势报告
- 2026年市政工程行业分析报告及未来发展趋势报告
- 2026年高档化妆品行业分析报告及未来发展趋势报告
- 2026 幼儿情绪管理无助情绪支持方法课件
- 农业项目工程合同范本
- 《遥感概论绪论》课件
- 惠州市城乡规划管理技术规定(2020年)
- JC∕T 2280-2014 内衬PVC片材混凝土和钢筋混凝土排水管
- 合众人寿《基本法》
- 《绿色尾矿充填固化剂》
- 09J202-1 坡屋面建筑构造(一)-2
- 市政工程培训课件
- 墓碑上的100个药方
- SWITCH塞尔达传说旷野之息-1.6金手指127项修改使用说明教程
- (完整版)高中有机化学方程式汇总
评论
0/150
提交评论