前言:

这个笔记是我个人总结,主要是熟练自己查看《Visual C# 从入门到精通》(第8版)这本书时,懵然起总结的想法,只是总结一些知识点,在工作项目会用得上,但是对毫无C#语言基础的,不大适合,因为里面会结合我自己的一些看法,估计需要一些基础才能看明白,如果需要一门入门级书籍还是要去购买《Visual C# 从入门到精通》(第8版)PDF版或者纸质版去一步步跟着书籍去练习操作。

——清风一人醉

第I部分 Visual C#和Visual Studio 2015 概述

第1章 使用变量、操作符和表达式

1.1 理解语句、标识符和关键字

语句是执行操作的命令,如计算值,存储结果,或者向用户显示消息。

C#语句遵循良好定义的规则集,而这些规则描述语句的格式和构成,称为语法

描述语句做什么的规范称为语义

*划重点 C#语句语法规则:所有语句都必须以分号终止。

标识符是对程序中的各个元素(命名空间、类、方法和变量)进行标识的名称。

 

*划重点 C#选择标识符语法规则:

  • 只能使用字母(大写和小写)、数字和下划线
  • 标识符必须以字母或下划线开头(如result,_name)

 

C#语言保留77个标识符供使用,这些标识符称为关键字,每个关键字有特定含义。如class,namespace,using等。(其它关键字想要了解,可百度一下。)

1.2 使用变量存储信息

变量是容纳值的一个存储位置。在使用变量的时候要对它进行命名。例如 int count;

*划重点 命名变量规则:

  • 不要以下划线开头。虽然在C#中合法,但限制了和其它语言(如Visual Basic)的代码的互操作性。
  • 不要创建仅大小写不同的标识符。例如同时使用myVariable和MyVariable变量,它们易混淆。在Visual Basic这样不区分大小写的语言中,类的重用性也会受限。
  • 名称以小写字母开头。
  • 在包含多个单词的标识符中,从第二个单词起,每个单词都首字母大写(这种写法是驼峰式)例如camelCase。

1.3 使用基元数据类型

数据类型

描述

大小(位)

示例

int

整数

32

int count;

count =42;

long

整数(更大范围)

64

long wait;

wait =42L;

float

浮点数

32

float away;

away=0.42F;

double

双精度(更精确)浮点数

64

double trouble;

trouble =0.42;

decimal

货币值(具有比double更高的精度和更小的范围)

128

decimal coin;

coin =0.42M;

string

字符序列

每字符16位

string vest;

vest =“text”;

char

单字符

16

char text;

Text=‘x’;

bool

布尔值

8

bool teeth;

teeth=true;

 

注意:

L:表示long

F:表示float

M:表示decimal

1.4 使用算术操作符

加号(+)、减号(-)、星号(*)、正斜杠(/)、百分号(%)分别执行加、减、乘、除、取模。它们成为操作符运算符,对值进行“操作”或“运算”来生成新值。在C#中,乘法类操作符(*,/和%)的优先级高于加法类操作符(+和-)。

注意:

操作符并不是适合所有数据类型,可使用任何算术操作符的数据类型char,int,long,float,double或decimal。

小知识点:字符串插值:开头的$符号表明这是插值字符串,{和}之间的任何表达式都需求值并置换。没有前置的$符号,字符串{“world”}将按字面处理。

我们通常在连接字符串习惯在中间用+连接,比如:

string text=“hello”+“world”;

 

字符串插值则允许改用以下语法:

string text=$”hello{“world”}”;

 

优点:字符串插值比+操作符高效的多。由于.NET Framework处理字符串的方式,用+来连接字符串可能消耗大量内存。字符串插值还更具可读性和减少犯错机会。

(技术无绝对,根据各人喜好用什么写法都可。)

1.5 变量递增递减

递增(++)和递减(--)是一元操作符,即只有一个操作数。它们具有相同的优先级和左结合性。递增和递减操作符与众不同之处在于,它们既可以放在变量前,也可以放在变量后。在变量前使用,称为这个操作符的前缀形式;在变量之后使用,则称为这个操作符的后缀形式。例如:

count++;//后缀递增

++count;//前缀递增

count--;//后缀递减

--count;//前缀递减

count++返回递增前的count值,而++count返回递增后的count值。

1.6 声明隐式类型的局部变量

var myVariable=99;

var myOtherVariable=“hello”;

以上俩个变量myVariable和myOtherVariable称为隐式类型变量。var 关键字告诉编译器根据用于变量的初始化表达式判断变量类型。在以上例子中myVariable是int类型,而myOtherVariable是string类型。

注意:var只是在声明变量时提供一些方便。但变量一经声明,就只能编译器推断的那种类型的值赋给它。例如,不能再将float,double,string值赋给myVariable。

特别注意:只有提供表达式来初始化变量,才能使用关键字var。

以下声明会导致编译错误:

var test;//错误-编译器不能推断类型

《Visual C# 从入门到精通》第一章使用变量、操作符和表达式——读书笔记的更多相关文章

  1. MyBatis3.2从入门到精通第一章

    第一章一.引言mybatis是一个持久层框架,是apache下的顶级项目.mybatis托管到goolecode下,再后来托管到github下.(百度百科有解释)二.概述mybatis让程序将主要精力 ...

  2. 第一章连通性问题-----algorithm in C 读书笔记

    首先不得不吐槽一下翻译的质量,霍红卫....你给我站出来,不打死你,只想问你一下,你当年四级过了吗? 问题描述 输入两个整数,代表两个节点,如果这两个整数没有建立连接(这包括直接连接和通过其他节点连接 ...

  3. SaltStack入门到精通第一篇:安装SaltStack

    SaltStack入门到精通第一篇:安装SaltStack 作者:纳米龙  发布日期:2014-06-09 17:50:36   实际环境的设定: 系统环境: centos6 或centos5 实验机 ...

  4. ArcGIS for Desktop入门教程_第一章_引言 - ArcGIS知乎-新一代ArcGIS问答社区

    原文:ArcGIS for Desktop入门教程_第一章_引言 - ArcGIS知乎-新一代ArcGIS问答社区 1 引言 1.1 读者定位 我们假设用户在阅读本指南前应已具备以下知识: · 熟悉W ...

  5. 【C语言探索之旅】 第一部分第四课第一章:变量的世界之内存那档事

    内容简介 1.课程大纲 2.第一部分第四课第一章:变量的世界之内存那档事 3.第一部分第四课第二章预告:变量的世界之声明变量 课程大纲 我们的课程分为四大部分,每一个部分结束后都会有练习题,并会公布答 ...

  6. 《TCP/IP详解卷1:协议》第11章 UDP:用户数据报协议-读书笔记

    章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP ...

  7. 《TCP/IP详解卷1:协议》第5章 RARP:逆地址解析协议-读书笔记

    章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP ...

  8. 《Visual C# 从入门到精通》第三章使用判断语句——读书笔记

    第3章 使用判断语句 3.1 使用布尔操作符 布尔操作符是求值为true或false的操作符. C#提供了几个非常有用的布尔操作符,其中最简单的是NOT(求反)操作符,它用感叹号(!)表示.!操作符求 ...

  9. SpringMVC从入门到精通之第一章

    第一节 简介:SpringMVC是Spring框架的一个模块,Spring和SpringMVC无需通过中间整合层进行整合.SpringMVC是基于MVC的WEB框架.MVC设计模式在B/S下的应用: ...

随机推荐

  1. python全栈开发 * 27知识点汇总 * 180710

    27   time  os  sys  模块 time 模块 一.表示时间的三种方式 时间戳(timestamp), 元组(struct_time),格式化时间字符串(Format string) 小 ...

  2. php利用OpenXML规范生成word,excel(pdf其他方法)

    这个涉及到的东西比较多 HTTP MIME types $contract_data = '<html xmlns:o="urn:schemas-microsoft-com:offic ...

  3. Consul的应用

    Consul在集群上的每一个节点(包括Server和Client)都运行一个Agent,通过这个Agent可以进行对Consul所提供的功能的操作,通过调用一系列HTTP API与Agent的交互即可 ...

  4. 浅谈Vue.use

    我们先来看一个简单的事例首先我使用官方脚手架新建一个项目vue init webpack vue-demo然后我创建两个文件index.js plugins.js.我将这两个文件放置在src/clas ...

  5. C和C指针小记(十八)-使用结构和指针-双向链表

    1.双链表 1.1 双向链表的声明 在一个双链表中,每个节点都包含两个指针--指向前一个节点的指针和指向后一个节点的指针. 声明 typedef struct NODE { struct NODE * ...

  6. Linux是cat、tail、head查看文件任意几行的数据

    Linux是cat.tail.head查看文件任意几行的数据 一.使用cat.tail.head组合 1.查看最后100行的数据 cat filename | tail -n 100 2.查看100到 ...

  7. REST风格的5条关键原则

    REST风格的5条关键原则包括: (1)网络上的所有事物都被抽象为资源. (2)每个资源对应一个唯一的资源标识. (3)通过通用的连接件接口对资源进行操作. (4)对资源的各种操作不会改变资源标识. ...

  8. 报错解决——xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun

    一般在遇到这个问题的时候都是想用git或者svn,结果发现用不了并报错xcrun: error: invalid active developer path (/Library/Developer/C ...

  9. HttpResponse输出文件

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm3.aspx. ...

  10. 重写select样式

    select {/*Chrome和Firefox里面的边框是不一样的,所以复写了一下*/border: solid 1px #000; /*很关键:将默认的select选择框样式清除*/appeara ...