1、比较运算符

==等于;  !=不等于;  >大于;  >=大于或者等于;  <小于;  <=小于或者等于;

比较运算符(又称关系运算符)用来进行值得真假性判断,结果是bool类型;

2、运算符优先级

运算符有优先级,优先级高的优先"结合运算";

伟大的"()"的优先级是最高的;

3、赋值表达式的值

赋值表达式本身就是一个值,这个值就是赋值之后左边变量的值;

4、i++和++i

i++是赋值之后再自增,++i是先自增再赋值;

i--和--i也是一样的;

5、逻辑运算符

逻辑运算符主要是用来对布尔类型的值进行运算的,主要有:&&(与/并且);||(或);!(非);

&&二元运算符,只有两边的的表达式或者值结果为true时,结果才是true,否则都为false;

||二元运算符,只要有一个为true,结果就是true;

!:一元运算符,取反,真的变假,假的变真;

短路运算

&&运算:当第一为false时,整个运算结果一定是false,就没有必要再去算第二个了;

||运算:也是如此,前面有一个为true结果就一定是true,也没有必要算后面的;

!就一个参与运算,不存在短路;

6、三元运算符
语法:条件表达式?表达式1:表达式2

如果条件表达式为true,则表达式的值为"表达式1",否则为"表达式2";

7、if语句
语法:

 if(比较表达式)
{
//要执行的代码块
}

如果比较表达式成立,则执行大括号里面的语句

如果if语句后面只有一条语句,可以简写,省略大括号(不建议),哪怕只有一句话,也要写大括号;

 if(比较表达式)
Console.WriteLine("演示代码");//要执行的代码块;

如下代码:

 if(比较表达式)
语句1;
语句2; //编译器编译时会帮我们把大括号加上变成下面的代码 if(比较表达式)
{
语句1;
}
语句2;

else子句

if语句后面还可以带else

 if(比较表达式)
{
//比较表达式为true时执行的代码块
}
else
{
//比较表达式为false时执行的代码块
}

else if

if还可以带else if

 if(条件表达式1)
{
//条件表达式1为true时要执行的代码
}
else if(条件表达式2)
{
//条件表达式2为true时要执行的代码
}
else if(条件表达式3)
{
//条件表达3为true是要执行的代码
}

执行过程:首先判断第一个表达式,如果成立则执行其所带的大括号里面的语句块;否则再判断下一个条件表达式是否成立,以此类推

8、switch-case

语法:

 switch(表达式)
{
case 取值1:
//语句;
break;
case 取值2:
//语句;
break;
...
default:
//语句;
break;
}

表达式可以是byte、short、int、char、string、枚举类型;

break意味着switch的结束;default相当于if语句的else,当所有case语句都不匹配则执行default;

多个switch条件合并的问题:当多个case条件要执行的代码是一样的情况下,可以合并,最后加一个break;

9、for循环

语法:

for(初始化表达式;循环条件表达式;循环后的操作表达式)
{
//循环体语句;
}

最开始先执行"初始化表达式";然后执行:先判断"循环条件表达式",如果为true,则执行"循环体语句";然后执行"循环后的操作表达式";

10、while循环
语法:

while(条件表达式)
{
//循环体;
}

每次循环前判断"条件表达式",如果为true,则执行"循环体",然后再进行下次判断;

for和while在实现上可以互相替代;

11、do-while循环

do
{
//执行语句;
}
while(条件表达式);

执行过程:先执行"执行语句",再判断"条件表达式"决定是否进入下次循环;

do-while和while的主要区别是:do-while的执行语句至少被执行一次,while的执行语句可能一次都不执行;

12、数组

语法:

类型[] 数组名 = new 类型[个数]
int[] arr = new int[5];

在读写的时候,数组名后面的[]叫做序号,又叫下标,,指的是对数组的元素进行操作,数组的下标从0开始,所以最后一个元素的下标是"个数-1";

13、数组的遍历
数组使用常见问题:对于int、double、float等数组,没有赋值的元素被初始化为0;

对于String等引用类型(初始化为null);

14、方法简介
如果程序很多地方都要计算一个数组的最大值,难道每次都写一堆代码?

抽象出方法(Method)/函数(Function)

方法的主要格式:

返回值类型 方法名 (参数类型 参数1,参数类型 参数2...)
{
}

方法就是一堆可以重复使用的代码段;

方法的执行过程中无法确定的数据以形参传递过来;

方法的执行结果以返回值进行返回;

方法可以没有参数;方法可以没有返回值(void);

如果没有返回值, 则在需要执行结束的地方return; 如果没写return;, 编译器则在最后一句后面默认加return;

return:不仅终止后面的代码,连if、for等都结束了意思就是结束整个方法

方法必须每个执行路径都有返回值

调用方法时不用去管定义方法时的参数名称是什么

方法内部的变量,外面不能使用;

15、方法重载

只是参数名字不一样,不能构成重载;

只是返回值类型不一样,也不能同时存在(构成合法的重载);

只要参数个数或者参数类型不同即可构成合法重载;

16、可变长度数组params

sum(int name,params string[] data)

可变参数前面还可以有其它参数,只要保证可变参数是最后一个;

03C#基础(2)的更多相关文章

  1. CSS+DIV入门第一天基础视频 CSS选择器层叠性和继承性

    大家好,我是小强老师, 现在网上的CSS+DIV视频,要么讲的太深,要么太浅,很多初学的同学们总是遇到困难,今天小强老师专门给大家准备了css课程的视频.带你从零基础学习CSS+DIV一直到能独立完成 ...

  2. 嵌入式Linux学习笔记之第一阶段---基础篇

    嵌入式Linux学习分五个阶段 第一阶段: 01嵌入式环境搭建初期 02C语言语法概述 03C语言内存操作 04c语言函数 05linux基础 06gun基础 第二阶段: 01-linux之io系统编 ...

  3. java基础集合经典训练题

    第一题:要求产生10个随机的字符串,每一个字符串互相不重复,每一个字符串中组成的字符(a-zA-Z0-9)也不相同,每个字符串长度为10; 分析:*1.看到这个题目,或许你脑海中会想到很多方法,比如判 ...

  4. node-webkit 环境搭建与基础demo

    首先去github上面下载(地址),具体更具自己的系统,我的是windows,这里只给出windows的做法 下载windows x64版本 下载之后解压,得到以下东西 为了方便,我们直接在这个目录中 ...

  5. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  6. Golang, 以17个简短代码片段,切底弄懂 channel 基础

    (原创出处为本博客:http://www.cnblogs.com/linguanh/) 前序: 因为打算自己搞个基于Golang的IM服务器,所以复习了下之前一直没怎么使用的协程.管道等高并发编程知识 ...

  7. [C#] C# 基础回顾 - 匿名方法

    C# 基础回顾 - 匿名方法 目录 简介 匿名方法的参数使用范围 委托示例 简介 在 C# 2.0 之前的版本中,我们创建委托的唯一形式 -- 命名方法. 而 C# 2.0 -- 引进了匿名方法,在 ...

  8. HTTPS 互联网世界的安全基础

    近一年公司在努力推进全站的 HTTPS 化,作为负责应用系统的我们,在配合这个趋势的过程中,顺便也就想去搞清楚 HTTP 后面的这个 S 到底是个什么含义?有什么作用?带来了哪些影响?毕竟以前也就只是 ...

  9. Swift与C#的基础语法比较

    背景: 这两天不小心看了一下Swift的基础语法,感觉既然看了,还是写一下笔记,留个痕迹~ 总体而言,感觉Swift是一种前后端多种语言混合的产物~~~ 做为一名.NET阵营人士,少少多多总喜欢通过对 ...

随机推荐

  1. Play on Words

    poj1386:http://poj.org/problem?id=1386 题意:给你n个单词,问你是否能够通过调整单词的顺序存在这样的一个序列,使得 每个单词的首字母是前一个单词的尾字母. 题解: ...

  2. codeforces Toy Sum

    题意:给你x个集合的数,然后根据求y集合的数. 思路:根据对称性,先找出对称出现的个数cnt,然后对称位置的中如果出现一个的把另一个加入到y集合中,再找出cnt个对应位置都不出现的加入到y集合中. # ...

  3. QVariant(相当于是Java里面的Object,起到一个数据类型“擦除”的作用,可以使用Q_DECLARE_METATYPE进行注册)

    =QVariant= [%这个类型相当于是Java里面的Object,它把绝大多数Qt提供的数据类型都封装起来,起到一个数据类型“擦除”的作用.比如我们的 table单元格可以是string,也可以是 ...

  4. json前后台传值

    谈到JSON,简单的说就是一种数据交换格式.近年来,其在服务器之间交换数据的应用越来越广,相比XML其格式更简单.编解码更容易.扩展性更好,所以深受开发人员的喜爱. 下面简单的写一下在项目中前后台js ...

  5. 【HDOJ】5179 beautiful number

    DFS. /* 5179 */ #include <iostream> #include <algorithm> #include <map> #include & ...

  6. 图论(网络流):[SCOI2015]小凸玩矩阵

    Description 小凸和小方是好朋友,小方给小凸一个N*M(N<=M)的矩阵A,要求小秃从其中选出N个数,其中任意两个数字不能在同一行或同一列,现小凸想知道选出来的N个数中第K大的数字的最 ...

  7. IIS7授权错误:“无法验证对路径的访问”的解决方法

    解决方法: iis7 无法验证对路径的访问 1.打开IIS 7管理器,鼠标单击定位到出现了这个错误的网站. 2.在IIS 7管理器的右边,选择“基本设置”. 3.在弹出的“编辑网站”对话框中,单击“连 ...

  8. HDOJ(HDU) 2138 How many prime numbers(素数-快速筛选没用上、)

    Problem Description Give you a lot of positive integers, just to find out how many prime numbers the ...

  9. memkeys 安装时遇到的问题及解决办法

    某天由于某需要,安装tumblr的开源工具memkeys .但还是一如既往地不是一帆风顺. 在./configure 时出现如下错误信息: configure.in:14: error: possib ...

  10. 安卓四大组件之一activity

    概要说明 Activity是Android组件中最基本也是最为常见用的四大组件(Activity,Service服务,Content Provider内容提供者,BroadcastReceiver广播 ...