理解C#系列 / 核心C# / 判断&循环&跳转
判断&循环&跳转
说明
本节写的是C#语言的控制程序流的语句,“控制程序流”就是控制程序运行流程的意思。
判断
很容易理解:如果……就……
if语句:测试特定条件是否满足,如果满足就执行某些代码,如果不满足就执行else中的代码。
- int i=;
- if(i==)
- {
- i=;
- }
- else
- {
- i=;
- }
程序很简单,建立整数变量,初始化为0,经过一个判断{如果满足条件: i 等于 0,那么对 i 赋值 1,若不满足条件,即 i 不等于0 时,对 i 赋值 0}。
(x==y),两个等于号表示判断等号两边的值是否相等,判断结果是布尔值true或false。而一个等于号是赋值操作,这里是新手常犯错误的地方。
switch语句:拿一个变量和多个值比较,和哪个值相等,就执行这个值相对应的执行代码。
我基本没用过switch语句,因为几乎可以用if做到switch能做到的所有事情。
如果使用的话,须注意每个case用break结尾,并且可以使用default实现else的效果。
循环
for循环
for(第一次循环开始前执行的代码;条件语句-如果满足才执行下一次循环;每一次循环结束后执行的代码){循环体}
for是功能最强大的循环语句,几乎可以用它做到其他循环语句能做到的所有事,只是某些时候,用其他循环语句比较简单方便,接下来介绍某些时候是哪些时候。
while循环
while(条件语句-如果满足才执行下一次循环){循环体}。
- while(true)//无限循环
- {
- if(表达式)//如果满足某个条件
- {
- break;//跳出循环
- }
- }
break语句是跳转语句的一种,提前介绍了,用于跳出循环,也就是结束该循环。
do...while循环
do{循环体}while(条件语句-如果满足才执行下一次循环)。
如此和while不同的是:不管如何,先执行一边循环体里的内容,再考虑循环的事。
foreach循环
foreach(变量类型 变量名 in 集合){循环体}
设置一个临时的变量,用于访问集合中的每一个个体,集合中有多少对象,就循环几次。
在循环体中可以通过此临时变量来使用此次循环中集合对应的个体,能访问,能调用其方法,修改其属性,但是不能修改临时变量,即不能对临时变量赋值。
跳转语句
break语句
在之前也介绍过,用于跳出循环。除此之外,break还可以在switch语句中用于退出某个case语句。
如果break放在switch语句或循环外部,就会产生编译错误。
continue语句
在循环体中使用,用于结束本回合循环,直接开始下一次循环。和break语句一样,通常是和if语句一起使用的。
continue语句执行后,还是会执行for循环的(每一次循环结束后执行的代码)。
return语句
return用于退出类的方法,把控制权返回给方法的调用者。
如果方法返回类型为void(表示不需要返回值),那么直接使用return返回,否则return语句必须返回这个类型的值,如果返回类型是引用类型,允许返回空值(null)。
goto语句
大多数人从未使用过……因为goto语句导致运行流程太混乱了……
理解C#系列 / 核心C# / 判断&循环&跳转的更多相关文章
- 理解C#系列 / 核心C# / 数据类型
数据类型 数据类型 C#把数据类型分为两种:值类型和引用类型. 值类型和引用类型 值类型的变量直接指向存储的值,引用类型的变量指向值的引用.[理解:引用就像一个柜子的号码牌,可以顺藤摸瓜找到柜子.假如 ...
- 理解C#系列 / 核心C# / 常量
常量 常量? 我对常量的理解就是在初始化完成后再也不变的“全局变量”. 定义常量 [const][空格][变量类型][空格][变量名称][=][值][:] const表示定义的是常量. 常量特点 常量 ...
- 理解C#系列 / 核心C# / 编译参数
编译参数 编译控制台应用程序 csc 源文件.cs 编译Windows应用程序 csc /t:winexe 源文件.cs 编译类库应用程序 csc /t:libray 源文件.cs 编译引用类库的应用 ...
- 理解C#系列 / 核心C# / 名称空间
名称空间namespace 名称空间 名称空间用来逻辑分类,而不是物理上的,名称空间与程序集无关[程序集:经由编译器编译得到的文件],同一个程序集中可以有2不同的名称空间,也可以在不同的程序集中定义同 ...
- 理解C#系列 / 核心C# / 枚举
枚举 如果没有枚举 //1代表s号:2代表m号:3代表l号:4代表XL号:5代表XXL号 ; ){ //快递发M号的衣服 } 有了枚举之后 声明枚举(请原谅我使用了中文汉字) public enum ...
- 理解C#系列 / 核心C# / 变量
变量 变量? 变量是对一个东西指定一个名称,变量的功能和人的名字差不多,提到名字就知道指的是什么. 变量类型? 变量类型说明了变量的类型,声明变量是一个整数,还是小数,还是字符,或是图像,或是人类,或 ...
- 深入理解JavaScript系列(10):JavaScript核心(晋级高手必读篇)
本篇是ECMA-262-3 in detail系列的一个概述(本人后续会翻译整理这些文章到本系列(第11-19章).每个章节都有一个更详细的内容链接,你可以继续读一下每个章节对应的详细内容链接进行更深 ...
- 深入理解javascript系列(4):立即调用的函数表达式
本文来自汤姆大叔 前言 大家学JavaScript的时候,经常遇到自执行匿名函数的代码,今天我们主要就来想想说一下自执行. 在详细了解这个之前,我们来谈了解一下“自执行”这个叫法,本文对这个功能的叫法 ...
- 深入理解JavaScript系列(1):编写高质量JavaScript代码的基本要点
深入理解JavaScript系列(1):编写高质量JavaScript代码的基本要点 2011-12-28 23:00 by 汤姆大叔, 139489 阅读, 119 评论, 收藏, 编辑 才华横溢的 ...
随机推荐
- HTML5 API——无刷新更新地址 history.pushState/replaceState 方法
尽 管是上面讲到的<JavaScript高级程序设计>(第二版)中提到,BOM中的location.path/query…… (window.location)在通过JavaScript更 ...
- 【JavaScript】JS的启动机制
DOM Event------------------>触发function() function 自身的调用 主要就是调用function 1.DOM Event 2.调用function
- MyBatis学习练习
转自:http://ccchhhlll1988-163-com.iteye.com/blog/1415621 基本目的:利用Mybatis完成对一个表简单的select.insert.update.d ...
- android程序逆向工程
随着智能手机的普及,功能越来越强大.程序也越来多和复杂化.研究一下android系统的逆向工程也是挺有意思的. 目前android逆向工程还处于初级阶段.表现在于: 1.没有完整的动态调试程序.目前由 ...
- python 中sys.stdout.write 和 print >> sys.stdout的区别(转)
下面应该可以解你的惑了: print >> sys.stdout的形式就是print的一种默认输出格式,等于print "%VALUE%" 看下面的代码的英文注释,是p ...
- Shell中的函数
一.在脚本中定义函数 与变量一样,在使用函数之前应该对函数进行定义.与其他编程类语言相比,由于没有数据类型的概念,因此也不必定义函数的类型. (1)在脚本中可以使用以下方式定义函数: function ...
- YYCache 设计思路
iOS 开发中总会用到各种缓存,最初我是用的一些开源的缓存库,但到总觉得缺少某些功能,或某些 API 设计的不够好用.YYCache (https://github.com/ibireme/YYCac ...
- ansible api
##一个简单的python脚本,通过ansible的api调用get_url模块实现远程下载功能 #!/usr/bin/env python import json import ansible.ru ...
- Solr高亮显示highlight的三种实现
高亮显示在搜索中使用的比较多,比较常用的有三种使用方式,如果要对某field做高亮显示,必须对该field设置stored=true 第一种是普通的高亮显示Highlighter,根据查询的 ...
- UILabel的简单用法和实际操作
1.UILabel **//设置文字 label.text = @"欢迎收看灌篮高手,我是安溪教练";**//设置文字颜色label.textColor = [UIColor ...