03C#基础(2)
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)的更多相关文章
- CSS+DIV入门第一天基础视频 CSS选择器层叠性和继承性
大家好,我是小强老师, 现在网上的CSS+DIV视频,要么讲的太深,要么太浅,很多初学的同学们总是遇到困难,今天小强老师专门给大家准备了css课程的视频.带你从零基础学习CSS+DIV一直到能独立完成 ...
- 嵌入式Linux学习笔记之第一阶段---基础篇
嵌入式Linux学习分五个阶段 第一阶段: 01嵌入式环境搭建初期 02C语言语法概述 03C语言内存操作 04c语言函数 05linux基础 06gun基础 第二阶段: 01-linux之io系统编 ...
- java基础集合经典训练题
第一题:要求产生10个随机的字符串,每一个字符串互相不重复,每一个字符串中组成的字符(a-zA-Z0-9)也不相同,每个字符串长度为10; 分析:*1.看到这个题目,或许你脑海中会想到很多方法,比如判 ...
- node-webkit 环境搭建与基础demo
首先去github上面下载(地址),具体更具自己的系统,我的是windows,这里只给出windows的做法 下载windows x64版本 下载之后解压,得到以下东西 为了方便,我们直接在这个目录中 ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- Golang, 以17个简短代码片段,切底弄懂 channel 基础
(原创出处为本博客:http://www.cnblogs.com/linguanh/) 前序: 因为打算自己搞个基于Golang的IM服务器,所以复习了下之前一直没怎么使用的协程.管道等高并发编程知识 ...
- [C#] C# 基础回顾 - 匿名方法
C# 基础回顾 - 匿名方法 目录 简介 匿名方法的参数使用范围 委托示例 简介 在 C# 2.0 之前的版本中,我们创建委托的唯一形式 -- 命名方法. 而 C# 2.0 -- 引进了匿名方法,在 ...
- HTTPS 互联网世界的安全基础
近一年公司在努力推进全站的 HTTPS 化,作为负责应用系统的我们,在配合这个趋势的过程中,顺便也就想去搞清楚 HTTP 后面的这个 S 到底是个什么含义?有什么作用?带来了哪些影响?毕竟以前也就只是 ...
- Swift与C#的基础语法比较
背景: 这两天不小心看了一下Swift的基础语法,感觉既然看了,还是写一下笔记,留个痕迹~ 总体而言,感觉Swift是一种前后端多种语言混合的产物~~~ 做为一名.NET阵营人士,少少多多总喜欢通过对 ...
随机推荐
- ajax异步请求不能刷新数据的问题
搞了两三天的问题,今天解决了.总结下: function reportGrpChange(cuid, title){ document.getElementById('reportFrameDiv') ...
- Prime Path(素数筛选+bfs)
Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 9519 Accepted: 5458 Description The m ...
- c++学习(1)
c++学习(1) 1.const C VS C++: 在c语言中const是一个只读变量(ReadOnly Varible),在c++中const只是代表常量(Constant). 例: const ...
- How to distribute your own Android library through jCenter and Maven Central from Android Studio
In Android Studio, if you wish to include any library to your application. You could just simply add ...
- Hat's Fibonacci(大数问题)
#include <iostream>#include <stdio.h>#include <string.h>using namespace std;int a[ ...
- hdu 1175 连连看 DFS
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1175 解题思路:从出发点开始DFS.出发点与终点中间只能通过0相连,或者直接相连,判断能否找出这样的路 ...
- 【转载】运维小技巧:使用ss命令代替 netstat
转自:https://www.91ri.org/12470.html ss是Socket Statistics的缩写. 顾名思义,ss命令可以用来获取socket统计信息,它可以显示和netstat类 ...
- 使用Linux的命令行工具做简单的文本分析
Basic Text Analysis with Command Line Tools in Linux | William J Turkel 这篇文章非常清楚的介绍了如何使用Linux的命令行工具进 ...
- cgdb调试postgresql
之前一直用gdb调试代码,最近在搞pg的时候用了一个cgdb,体验很好,调试pg代码的时候真的很方便. 本文主要讲解在进行pg内核开发的时候,如何搭建一个环境,用cgdb方便快捷的调试postgres ...
- Python入门基础教程(儿童版) [分享一本入门级教程]
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1. 推荐书名 No Starch--Python for ...