第二章:核心C#
变量
如果在一条语句中声明和初始化了多个变量,那么所有的变量都具有相同的数据类型
Int x=10,y=20;
变量使用前需要赋初始值
声明不同类型的变量需要单独的语句。
变量的初始化
变量时类或者结构中的字段,如果没有显式的初始化,创建这些变量时,其默认值就是0.
方法的局部变量必须在代码中显示的初始化,之后才能在语句中使用它们的值。
C#中初始化应用类型的数据时需要使用new关键字。
类型推断
1. 类型推断是使用var关键字
2. 变量必须初始化(否则编译器没有推断变量类型的依据)
3. 初始化器不能为空
4. 初始化器必须放在表达式中
5. 不能把初始化器设置成一个对象,除非在初始化其中创建了一个新的对象。
6. 声明的变量推断出类型后,就不能改变变量的类型了变量类型确定后就要遵循其他变量类型遵循的强类型化规则。
变量的作用域
变量的作用域是可以访问该变量的代码区域。
常量
在声明变量时前面加上const,就可以把该变量指定为一个常量。
常量必须在声明时初始化
常量的值必须在编译时用于计算
常量实际上是静态的,但,注意不允许在常量声明中包含修饰符static如果需要这么做,应该使用只读字段。
常量替代了难读的数字和字符串使程序易于阅读。
常量是程序易于修改。(销售税率发生变化6%变到8%)只需要修改变量的初始值即可
常量更容易避免让程序出现错误。
预定义数据类型
值类型和引用类型
值类型直接存储其值
应用类型存储对值的引用
存储位置不同:
值类型存储在堆栈中
引用类型存储在托管堆上
CTS类型
在C#中声明一个int类型的数据时声明的实际上是.net结构System。Int32的一个实例。
可以在语法上吧基本数据类型看做是支持某些方法的类。
C#有15个预定义的类型,其中13个值类型,两个引用类型(string和object)
C#支持8个预定义整数类型




Float f=23.30f;
Decimal类型的数据用于财务计算但是decimal不是基本类型,所以计算时使用该类型会有性能损失。
Decimal d=13.30M;
预定义的用用类型
Object 可以使用object引用绑定任何子类型的对象
Object执行许多一般用途的方法。(Equals(),GetHashCode(),GetType(),ToString()等等)。
String :虽然string是应用类型但是与其它引用类型在常见的操作上又有一些差别(字符串是不可变的:修改一个字符串就会创建一个全新的string对象而另一个字符串不发生任何变化)——实际是运算符重载的结果
转义字符的使用
String filepath=”C://ProCSharp//First.cs”;
String filepath=@”C:/ProCSharp/First.cs”;
流控制
switch (integerA)
{
case 1:
Console.WriteLine("1");
Break;
case 2:
Console.WriteLine("2");
Break;
default:
Console.WriteLine("is not 1or 2 ");
Break;
}
Main
C#程序是从方法Main()开始执行的。这个方法必须是类或者结构的静态方法并且返回值类型必须是Int或者void。
第二章:核心C#的更多相关文章
- c#高级编程第七版 学习笔记 第二章 核心c#
第二章 核心C# 本章内容: 声明变量 变量的初始化和作用域 C#的预定义数据类型 在c#程序中使用条件语句.循环和跳转语句执行流 枚举 名称空间 Main()方法 基本的命令行c#编译器选项 使用S ...
- C#高级编程第9版 第二章 核心C# 读后笔记
System命名空间包含了最常用的.NET类型.对应前面第一章的.NET基类.可以这样理解:.NET类提供了大部分的功能,而C#语言本身是提供了规则. pseudo-code,哈哈,秀逗code.伪代 ...
- 【读书笔记】C#高级编程 第二章 核心C#
(一)第一个C#程序 创建一个控制台应用程序,然后输入代码,输入完毕后点击F5 Console.WriteLine();这条语句的意思:把括号内的内容输出到界面上: Console.ReadKey() ...
- 第二章 JavaScript核心语法
第二章 avaScript核心语法 一.变量的声明和赋值 JavaScript是一种弱类型语言,没有明确的数据类型,也就是在声明变量时不需要指定数据类型,变量的类型由赋给变量的值决定. 在Java ...
- Python核心编程第三版第二章学习笔记
第二章 网络编程 1.学习笔记 2.课后习题 答案是按照自己理解和查阅资料来的,不保证正确性.如由错误欢迎指出,谢谢 1. 套接字:A network socket is an endpoint of ...
- Android 系统移植与驱动开发--第二章搭建Android环境核心步骤及心得
第二章 搭建Android 开发环境 虽然在这一章中讲的是Android底层开发环境,但是相应伴随的还有Android NDK程序来测试Linux驱动,HAL程序库.底层开发不仅需要交叉编译环境,还要 ...
- Python黑帽编程 2.0 第二章概述
Python黑帽编程 2.0 第二章概述 于 20世纪80年代末,Guido van Rossum发明了Python,初衷据说是为了打发圣诞节的无趣,1991年首次发布,是ABC语言的继承,同时也是一 ...
- 《Entity Framework 6 Recipes》翻译系列 (3) -----第二章 实体数据建模基础之创建一个简单的模型
第二章 实体数据建模基础 很有可能,你才开始探索实体框架,你可能会问“我们怎么开始?”,如果你真是这样的话,那么本章就是一个很好的开始.如果不是,你已经建模,并在实体分裂和继承方面感觉良好,那么你可以 ...
- 精通Web Analytics 2.0 (4) 第二章:选择你的网络分析灵魂伴侣的最佳策略
精通Web Analytics 2.0 : 用户中心科学与在线统计艺术 第二章:选择你的网络分析灵魂伴侣的最佳策略 在Web Analytics 2.0的新世界秩序中,您必须跳出"单一真理来 ...
- CISA 信息系统审计知识点 [第二章. IT治理和管理 ]
第二章. IT治理和管理 1. IT治理.管理.安全和控制框架及标准.指南和实践 IT治理是董事会和执行管理层的职责. IT治理的关键因素:保持与业务的战略一致,引导业务价值的实现. IT治理关注 ...
随机推荐
- Python与数据结构[0] -> 链表/LinkedList[0] -> 单链表与带表头单链表的 Python 实现
单链表 / Linked List 目录 单链表 带表头单链表 链表是一种基本的线性数据结构,在C语言中,这种数据结构通过指针实现,由于存储空间不要求连续性,因此插入和删除操作将变得十分快速.下面将利 ...
- mac-command-line-doing
创建文件夹 mkdir myDirectory 新建文件 touch a.html 编辑文件 vim a.html 删除文件 rm a.html 删除整个文件夹 rm -rf myDirectory ...
- 图床plus演示 | 图床及在线分享演示文稿工具
文章目录 关于图床 什么是图床? 墙内 墙外 关于在线分享演示文稿 在线分享演示文稿 工具分享 待补充 关于图床 什么是图床? 这并不是一个多么高大上的名词概念!用比较通俗的话来说,当你在撰写新文章时 ...
- Proxy server got bad address from remote server
在ArcMap中,在GIS Servrvers中,打开已经设置好的服务器时,出现下面的弹窗问题. Proxy server got bad address from remote server(ver ...
- httpanalyzer 抓包时会更换证书
今天是要httpanalyzer时发现,在启用的时候,如果当前网络地址是https的话,那么当前证书会被更换掉,效果如下: 而原来的证书如下: 所以,请注意,如果你的请求有严格的证书验证,那么证书验证 ...
- docer中运行crontab
1 安装 sudo apt-get install cron 2 启动 start cron 3 列出所有本机启动crontab任务 ls -l /etc/init.d 列出所有自建cron任务 ...
- AJAX enabled & disabled
@model string @{ ViewBag.Title = "GetPeople"; AjaxOptions ajaxOpts = new A ...
- Linux用户配置sudo权限(visudo)
sudo的工作过程如下: 1,当用户执行sudo时,系统会主动寻找/etc/sudoers文件,判断该用户是否有执行sudo的权限 2,确认用户具有可执行sudo的权限后,让用户输入用户自己的密码确认 ...
- 4. Median of Two Sorted Arrays(topK-logk)
4. Median of Two Sorted Arrays 题目 There are two sorted arrays nums1 and nums2 of size m and n respec ...
- oracle调优 浅析“会话管理开销”
调优之浅析"会话管理开销" [简单介绍] 在调优的过程中,对于会话的管理是比較普遍的问题,由于维护会话的开销相对是比較高的. [过程表现例如以下] ...