C 面向对象程序设计 世界大学城解析

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第2章C#语法基础数据类型变量和常量语句2.1数据类型C#的数据类型可分为两大类:1)值类型(简单类型、结构类型和枚举类型)2)引用类型(数组、类、委托和接口)值类型和引用类型有区别:值类型变量直接存储它的数据内容,而引用类型不存储实际数据内容,是存储对实际数据的引用。2.1数据类型类型值类型引用类型简单类型结构枚举指针接口自描述类型类数组用户定义的类装箱的值类型委托2.1数据类型值类型-简单类型(1)整数类型:类型含义取值范围sbyte表示有符号8位整数-128~127byte表示无符号8位整数0~255short表示有符号16位整数-32768~32767ushort表示无符号16位整数0~65535int表示有符号32位整数-2147483648~2147483647uint表示无符号32位整数0~4294967295long表示有符号64位整数-9223372036854775808~9223372036854775807ulong表示无符号64位整数0~18446744073709551615例2-1:usingSystemclassint_test{publicstaticvoidMain(){shortx=32766;x++;Console.WriteLine(x);x++;Console.WriteLine(x);}}2.1数据类型值类型-简单类型(2)布尔类型:采用true和false两个值来表示布尔逻辑量。(3)实数类型:包括单精度(float)、双精度(double)和十进制类型(decimal)。(4)字符类型:包括一般字符和转义字符,采用Unicode字符集,一个Unicode字符标准长度为16位,它允许用单个编码方案表示世界上使用的所有字符。boola1=true;boola2=(x0&&x100);decimal是一种高精度,128位数据类型,其精度用位数表示,取值范围比double要小得多,但它更精确;当赋值时,使用后缀m,表明它是一个十进制类型,否则,被当作double类型处理字符变量赋值:charc='a';charc='\x0061';charc='\u0061';2.1数据类型类型转换1)隐式转换:从小的类型向大的类型转换。如:byte到int。但从有符号数向无符号数转换会出错,如sbyte到ushort。2)显式转换:强制类型转换,可能会导致信息丢失。2.1数据类型类型转换3)用System.Convert转换:System.Convert类提供了一整套转换方法。(1)将string值转换为boolean值。stringMyString=true;boolMyBool=Convert.ToBoolean(MyString);//MyBool=true(2)将数字字符的字符串转换为Int32值。stringnewString=123456789;intMyInt=Convert.ToInt32(newString);//MyInt=123456789(3)将Int64数据转换成Int32数据。Int64MyInt64=123456789intMyInt=Convert.ToInt32(MyInt64)//MyInt=123456789(4)进行四舍五入的转换。doubleMyDouble=42.72;intMyInt=Convert.ToInt32(MyDouble);//MyInt=434)装箱和拆箱:值类型和引用类型之间的转换。2.2变量和常量变量在C#中,变量命名必须遵循以下规则:变量名必须以字母或下划线开头,只能由字母、数字和下划线组成,不能与C#中的关键字同名。使用变量的一条重要原则是:变量必须先定义后使用。定义变量时,可以直接对变量赋值,相当于初始化变量。如果变量在定义时没有赋值,则必须在程序代码中赋值。在C#中,变量总共分为七中类型:静态变量、非静态变量、数组元素、值参数、引用参数、输出参数和局部变量。2.2变量和常量常量常量就是其值固定不变的量,即在程序执行期间,常量的值不会发生改变。可以在代码的任何位置用常量代替实际值。常量声明:attributeconsttypedeclarators=值;其中:●attribute可以是new、public、protected、internal、private●const是声明常量的关键字;●type是常量类型,必须是以下之一:sbyte、byte、short、ushort、int、uint、long、ulong、char、float、double、decimal、bool、string枚举类型或者引用类型;●declarators是常量标示符。表达式语句表达式语句(Expressionstatement)是在一个表达式后面加上分号,而表达式由操作数和操作符组成。一元操作符主要有:+(一元加)、-(一元减)、!(逻辑非)、~(按位求补)、++(增量)、--(减量)和强制转换运算符()。算术操作符有5种:+(加)、-(减)、*(乘)、/(除)、%(余数)。位操作符是对数据按二进制位进行运算的操作符。包括:&(按位与)、|(按位或)、~(按位取反)、^(按位异或)、(按位左移)和(按位右移)。赋值操作符包括简单赋值(=)和复合赋值(如+=、-=)。关系操作符包括:==、!=、、、=、=。逻辑操作符包括:&&(逻辑与)、||(逻辑或)、!(逻辑非)。条件操作符:“?:”sizeof操作符:用于获得值类型的大小(以字节为单位)。2.3语句表达式语句测试操作符包括:is操作符和as操作符。1)is操作符被用于动态地检查运行时对象类型是否和给定的类型兼容,一般格式为“eisT”,其中,e是一个表达式,T是一个类型,返回值是一个布尔值。它表示e是否能通过引用转换、装箱转换或拆箱转换,成功地转换为T类型。2.3语句usingSystem;classIstest{publicstaticvoidMain(){Console.WriteLine(1isint);Console.WriteLine(1isfloat);Console.WriteLine(1.0isfloat);Console.WriteLine(1.0isdouble);}}运行结果:TrueFalseFalseTrue表达式语句测试操作符包括:is操作符和as操作符。2)as操作符as操作符用于通过引用转换或装箱转换将一个值显式地转换成指定的引用类型,as转换不会产生任何异常,如果转换不可以进行,结果值为null。一般格式为“easT”,其中e一定是一个表达式且T是一个引用类型,返回值的类型总是T的类型,并且结果总是一个值。2.3语句表达式语句其它特殊操作符包括:new、typeof。1)new:用于创建一个新的类型实例2)typeof:用于获得某一类型的System.Type对象2.3语句流程控制语句:C#中的流程控制语句分为选择控制、循环控制、跳转语句等。1)选择语句C#中的选择语句有两种:if语句和switch语句。它们的区别在于if语句是从两个语句中选择一个执行,而switch语句是从多个语句中选择一个执行。2.3语句双分支if语句:if(布尔表达式)语句1else语句2单分支if语句:if(布尔表达式)语句1多分支if语句:if(布尔表达式1)语句1elseif(布尔表达式2)语句2elseif(布尔表达式3)语句3…else语句nswitch语句:switch(控制表达式){case常量表达式1:语句1case常量表达式2:语句2…case常量表达式n:语句n[default:语句n+1]}2.3语句流程控制语句:C#中的流程控制语句分为选择控制、循环控制、跳转语句等。2)循环语句在C#语言中有4种循环语句,分别为:while语句、do-while语句、for语句和foreach语句while语句:while(布尔表达式)语句;do-while语句:do语句;while(表达式)for语句:for([表达式1];[表达式2];[表达式3])语句;foreach语句:foreach(数据类型循环变量in集合表达式)语句;2.3语句流程控制语句:C#中的流程控制语句分为选择控制、循环控制、跳转语句等。3)其它语句块语句:用一对大括号“{}”将若干条语句括起来。break和continue语句:break语句主要用在switch和循环语句中,用来中断当前的选择或循环,并跳出当前的选择或循环语句。continue语句主要用在循环语句中,用于结束本次循环,接着进行下一次循环是否执行的判定。goto语句:常用于将程序流程转移出嵌套范围。return语句:将程序执行流程转移到主调函数中。2.4练习1、求数组所有元素的和。2、排序。3、求1~n中的所有素数。

1 / 17
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功