欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C#基础知识入门概要(自我回顾用)

程序员文章站 2022-10-31 11:54:49
一,C#是什么? 人与人之间可以用语言进行交流,我们和计算机交流也是通过语言。我们可以通过语言让一个人做一件我们想让他做事情(他愿意的话~),我们能不能让计算机按照我们的意愿来做事情呢?比如我们让计算机进行数学运算,播放歌曲,显示特定的画面等等。人类设计计 C#就是种类繁多的计算机语言的一种,只要我 ......

一,C#是什么?

人与人之间可以用语言进行交流,我们和计算机交流也是通过语言。我们可以通过语言让一个人做一件我们想让他做事情(他愿意的话~),我们能不能让计算机按照我们的意愿来做事情呢?比如我们让计算机进行数学运算,播放歌曲,显示特定的画面等等。人类设计计

C#就是种类繁多的计算机语言的一种,只要我们按照计算机能够理解的规则来设计我们的指令,计算机就可以做它能做到的任何事情。

学习一门计算机语言就是学习它的规则。

二、二进制

计算机作为一种机器其实很单纯,它只能识别0和1两种状态,这是一种机器语言。计算语言的发展经过了机器语言,汇编语言,高级语言的过程。我们学习的各种高级语言都需要经过编译,转换成机器语言计算机才能一步步执行,这就涉及到二进制的概念。十进制逢十进一:0,1,2,3,4,5,6,7,8,9,10,11,12,...;二进制逢二进一:0,1,10,11,100,101,110,111,...;二进制和十进制可以相互转换。

十进制转二进制:

方法:十进制数除以16,商继续除以16直到商为0,每次余数由8,4,2,1中的几个求和可得,则8这几个数对应的位置记为1,其余位置记0。从下往上排列即得这个十进制数对应的二进制数。
举例:
十进制数265         8  4  2  1
除16  商16 余9      1  0  0  1
除16  商1   余0      0  0  0  0
除16  商0   余1      0  0  0  1

则其对应的二进制数为 0001 0000 1001

二进制转十进制:

二进制数从右到左,每4位为一组(最后不足四位补0,编号N从第0组开始,以此类推)和8,4,2,1对应。其中1对应的数字求和再乘以16的N次方,所得的每组数再求和。
举例:
二进制数1000 1101
8  4  2  1    8  4  2  1
1  0  0  0    1  1  0  1
8*16¹+(8+4+1)*16º=141
即其对应的十进制数为 141。

三,开发中常见的术语

C#基础知识入门概要(自我回顾用)

四、变量和数据类型

1、数据

计算机存储的数据会分为各种类型,基本类型有4种:int(整数类型)、double(浮点数类型)、string(字符串类型)、char(字符类型)。每种类型有对应的书写规则。

char:字符类型 ‘’

string:字符串类型 “”

int:整数类型 直接书写

double:浮点数类型 直接书写

类型转换

任何类型转string: 数据.Tostring()

string转int:int.Parse(数据)

string转double:double.Parse(数据)

double转int:显式转换 int(数据)

int转double:隐式转换 不采取操作

2、变量

变量代表一块储存数据的内存空间,存储的数据可变。需要先声明,再赋值。

声明:数据类型 + 变量名   举例:int number;
赋值:变量名 = 值  举例:number = 6;
注意事项:申明和赋值变量名相同,赋值的数据类型和声明的数据类型相同。

变量三要素:数据量类型、变量名、变量值。
变量的命名有规则:采用驼峰命名法,做到望文知意。

3、软件中的错误和调试

编写程序错误在所难免,最重要的是能够及时发现错误,通过调试改正,汲取经验以后避免。

常见的错误有3种:编译错误,运行错误,逻辑错误。

编译错误,开发工具会提示,容易发现。运行错误很难发现,需要在调试模式下运行,发现处理。逻辑错误是运行结果与预期不符,这种错误最难发现,需要运用断点调试检查每一步的运行结果,发现错误语句再做处理。

五、运算符和表达式

1、运算符

C#的运算类型按操作数的个数来分类可分为:一元(目)运算、二元(运算)、三元(三目)运算;

按运算符的功能分类可分为:算数运算、逻辑运算、位运算、其他运算。

C#基础知识入门概要(自我回顾用)
2、表达式

一条有意义的语句,并且该语句至少包含一个操作数和一个操作符。

六、流程控制

计算机在运行程序时是从上而下运行,有时我们需要改变运行的流程,就需要用到流程控制语句。

常见的流程控制语句有:

if判断:

代码格式:if (条件1)             
                  {代码1}
                 else if (条件2) //可以有任意数量条
                 {代码2}
                 else    //可省略
                 {代码3}

switch选择:

switch (变量或表达式)
{    case  值1:
     代码1;
    break;

     case  值2:
     代码2;
    break;

   default:
     代码N;
    break;
}

while循环:

while (循环条件)  //值、变量、表达式,必须是bool类型
{
循环体
}

do while循环:和while循环的区别:do while 先执行一次程序体再判断条件

for循环:

for (表达式1;循环条件;表达式2)

{

循环体

}

break:结束循环

continue:结束本次循环,进入下次循环

需要牢记每一种流程控制语句的使用规范,注意各种嵌套。

七、数组和集合

数组和集合也是数据的一种,对应有数据类型。

数组声明:数据类型[] 变量名;

赋值:变量名 = new 数据类型 [长度]

集合的声明:List<数据类型> 变量名;

变量名 = new List<数据类型>();

数组初始化器:给数组赋值的同时,指定数组的每一项值.

举例:

int[] nums;
nums = new int[3];
nums[0] = 2;
nums[1] = 5;
nums[2] = 1;
初始化器:
nums = new int[3] {2, 5, 1}; //数组长度必须和初始化的数量相同
简化:
int [] nums = new int[3] {2, 5, 1}; // 长度3可以不写,系统自己会判断
int nums = new int [] {2, 5, 1}
再简化:
int [] nums = {2, 5,1} ; //这种极简写法仅能存在声明时的初始化
错误示范:
int [] nums;
nums = {2, 5, 1};

集合初始化器:变量名 = new List<数据类型>{元素1,元素2,...,元素n}

数组和集合作为特殊的数据形式,有自己的一套读取,修改规则

数组读取:变量名[索引];

数组修改:变量名[索引] = 值;

获取长度:数组名.Length;返回int类型

集合读取和修改与数组一致;

集合添加数据:集合变量名.Add(要添加的数据);

集合插入数据:变量名.Insert(要插入的索引,要插入的数据);

集合删除数据:变量名.RemoveAt(要删除数据对应的索引 ); 变量名.Remove(要删除的数据的第一个匹配项);

数组和集合都可以用for循环和foreach循环来遍历。

foreach为只读循环,循环体中不能更改集合或数组

foreach遍历速度快,执行效率高
for循环遍历速度慢,执行效率低