- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二章 C#编程基础 主讲人:蔡菲 C# 的基本数据类型 C# 中的数据类型分为两个基本类别 值类型 表示实际数据 只是将值存放在内存中 值类型都存储在堆栈中 int、char、结构 引用类型 表示指向数据的指针或引用 包含内存堆中对象的地址 为 null,则表示未引用任何对象 类、接口、数组、字符串 引用类型 引用的含义是该类型的变量不直接存储所包含的值,而是指向它所要存储的值,也就是说,引用类型存储实际数据的引用值的地址。 Object类 object是C#中所有类型(包括所有的值类型和引用类型)的根类。Object类是预定义类System.Object的别名。对一个object的变量可以赋予任何类型的值。例如: int x=25; object obj1; obj1=x; object obj2=‘a’; String类 string类型是一个从object类直接继承的密封类型,并且它不能再派生其它的类型。其实例表示Unicode字符串。例如: string str=“hello world”; 值类型和引用类型的区别 值类型变量直接包含它们的数据,而引用类型变量是存储对象的引用。对于引用类型,有可能两个变量引用相同的对象,因而可能出现对一个变量的操作影响到其它变量所引用对象的情况。对于值类型,每个变量都有它们自己对数据的复制,所以不会因为对一个进行操作而影响到其它变量。 Using System; class clobj1 { public int Value=0; } 装箱转换 “装箱”就是将值类型包装成引用类型的处理过程。当一个值类型被要求转换成一个object对象时,“装箱”操作自动进行,它首先创建一个对象实例,然后把值类型的值复制到这个对象实例,最后由object对象引用这个对象实例。 装箱转换是指将一个值类型隐式地转换成一个object类型。例如 int a=10; object obj=a; 也可以显式的方法进行装箱操作: object obj=(object)a; 拆箱转换 “拆箱”操作与“装箱”相反,它是将一个object类型显式转换成值类型。首先检查由object引用的对象实例值类型的包装值,然后把实例中的值复制到值类型的变量中。 注意:当一个“装箱”操作把值类型转换为一个引用类型时,不需要显式地强制类型转换;而拆箱操作把引用类型转换到值类型时,由于它可以强制转换到任何可以相容的值类型,所以必须显式地强制类型转换。 装箱和拆箱 逐字字符串 在介绍字符时介绍了转义符“\”,在定义字符串时同样可以使用。如果定义字符串表示绝对路径C:\temp\temp1\temp2\,则需要以下代码: 逐字字符串 在常规的字符串前面加一个@,就形成了逐字字符串,它的意思是字符串中的每个字符均表示本意,不使用转义字符。如果在字符串中需用到双引号,则可连写两个双引号来表示一个双引号。 例如: @C:\windows\Microsoft // 与 C:\\windows\\Microsoft 含义相同 @He saidHello to me // 与He said\Hello\ to me 含义相同 使用注意 switch语句表达式必须是整数类型,case常量必须与表达式类型兼容,case常量的值必须互异,不能有重复。 “不穿透”规则 可以有两个或多个case前缀指向相同的语句序列。 break 语句可用于退出循环 continue 语句可用于跳过当前循环并开始下一循环 例如: int [,]score; score=new int[3,4]; //score是一个3行4列的二维数组 float[,,]table=new float[2,3,4]; //table是一个三维数组,每一维的个数分别是2、3、4 2.多维数组初始化 语法形式2: type [ ] arrayName = new type [ , ] {{ val11, val12, …,val1n },{ val21, val22,…,val2n }, …, { valm1, valm2, …,valmn }}; 默认size,由编译系统根据初始化表中花括号{}的个数确定行数,再根据{}内的数据确定列数,从而得出数组的大小。 2.多维数组初始化 语法形式3: type [ , ] arrayName ={{ val11, val12, …,val1n }, { val21, val22, …,val2n }, …, { valm1, valm2, …,valmn }}; 数组声明与初始化同时进行,还可以默认ne
您可能关注的文档
最近下载
- 消除艾滋病、梅毒和乙肝母婴传播工作实施方案(2025版) .pdf VIP
- 工作流培训课件.ppt
- 24J306:窗井、设备吊装口、排水沟、集水坑.docx VIP
- 人教版八年级物理上册第五章《透镜及其应用》第一节`透镜同步练习 含答案.docx VIP
- 人教版九年级上册初中美术全册教案(教学设计).doc VIP
- PW2051_2.0数据手册下载.pdf VIP
- 接地电阻测试记录表(填写).docx VIP
- 2023整理全国汉字听写大赛题库及答案.pdf VIP
- 部编版小学道德与法治六年级下册8《科技发展造福人类》教学课件.ppt VIP
- 2026年江苏农林职业技术学院单招职业适应性测试必刷测试卷必考题.docx VIP
文档评论(0)