详解.net循环、逻辑语句块(基础知识)

循环、逻辑语句块

好久不写博客了,断更了好几天了,从上周五到今天,从北京到上海,跨越了1213.0公里,从一个熟悉的城市到陌生的城市,还好本人适应力比较好,还有感谢小伙伴的接风咯,一切都不是事,好了,进入正题:

本篇还是.NET 基础部分咯,主要简述循环,判断:

循环:

for循环

语法:

for(表达式1;表达式2;表达式3)
{
 循环体;
}

表达式1一般为声明循环变量,记录循环的次数(int i=0;)

表达式2一般为循环条件(i<10)

表达式3一般为改变循环条件的代码,使循环条件终有一天不再成立(i++)。

执行过程:程序首先执行表达式1,声明了一个循环变量用来记录循环的次数,

然后执行表达式2,判断循环条件是否成立,如果表达式2返回的结果为true,

则执行循环体。当执行完循环体后,执行表达式3,然后执行表达式2继续判断循环条件是否成立,如果成立则继续执行循环体,如果不成立,则跳出for循环。

案例:

注:如案例中的“水仙花数” 不懂自行百度。

foreach循环:

语法:

foreach(数据类型 标识符 in 表达式)
{
循环体
}

foreach (type identifier in expression)

{

Statement

}

其中:

type

identifier 的类型。

identifier

表示集合元素的迭代变量。如果迭代变量为值类型,则无法修改的只读变量也是有效的。

expression

对象集合或数组表达式。集合元素的类型必须可以转换为 identifier 类型。请不要使用计算为 null 的表达式。

而应计算为实现 IEnumerable 的类型或声明 GetEnumerator 方法的类型。在后一种情况中,GetEnumerator 应该要么返回实现 IEnumerator 的类型,要么声明 IEnumerator 中定义的所有方法。

statement

要执行的嵌入语句。

案例:

注:案例中是声明一个int类型的数组。以后的篇章中会讲述到数组、集合。

while循环:

语法:

while(循环条件)
{
  循环体;
}

执行过程:程序运行到while处,首先判断while所带的小括号内的循环条件是否成立,

如果成立的话,也就是返回一个true,则执行循环体,执行完一遍循环体后,再次回到

循环条件进行判断,如果依然成立,则继续执行循环体,如果不成立,则跳出while循环。

在while循环当中,一般总会有那么一行代码,能够改变循环条件,使之终有一天不再成立,

如果没有那么一行代码能够改变循环条件,也就是循环条件永远都成立,我们称之这种循环

叫做死循环。

最简单的最常用的死循环:

while(true)
{

}

特点:先判断,再执行,有可能一遍循环都不执行。

案例:

do-while循环

语法:

do
{
  循环体;
}while(循环条件);

执行过程:程序首先会执行do中的循环体,执行完成后,去判断do-while循环的循环条件,

如果成立,则继续执行do中的循环体,如果不成立,则跳出do-while循环。

特点:先循环,再判断,最少执行一遍循环体。

案例:

嵌套循环:外层循环用来控制输出的行数,内层循环用来控制输出的列数

for(表达式1;表达式2;表达式3)
{
 for(表达式1;表达式2;表达式3)
{
 循环体;
}
}

例如99乘法表:

逻辑语句块:

if语句:

语法:

if(判断条件)
{
  要执行的代码;
}

判断条件:一般为关系表达式或者bool类型的值。

执行过程:程序运行到if处,首先判断if所带的小括号中的判断条件,

如果条件成立,也就是返回true,则执行if所带的大括号中的代码,

如果判断条件不成立,也就是返回一个false。则跳过if结构,继续向下执行。

if结构的特点:先判断,再执行

案例:

if-else

语法:

if(判断条件)
{
  执行的代码;
}
else
{
  执行的代码
}

执行过程:程序执行到if处,首先判断if所带的小括号中的判断条件是否成立,

如果成立,也就是返回一个true,则执行if所带的大括号中的代码,

执行完成后,跳出if-else结构。

如果if所带的小括号中的判断条件不成立,也就是返回一个false,

则跳过if语句,执行else所带的大括号中的语句,执行完成后,跳出if-else结构。

if-else特点:先判断,再执行,最少都要执行一条代码。

用于两种情况的判断

注意:else永远跟离它最近的那个if配对

案例:

if else-if

作用:用来处理多条件的区间性的判断。

语法:

if(判断条件)
{
  要执行的代码;
}
else if(判断条件)
{
  要执行的代码;
}
else if(判断条件)
{
  要执行的代码;
}
else if(判断条件)
{
  要执行的代码;
}
........
else
{
  要执行的代码;
}

执行过程;程序首先判断第一个if所带的小括号中的判断条件,如果条件成立,也就是返回一个true,

则执行该if所带的大括号中的代码,执行完成后,立即跳出if else-if结构。

如果第一个if所带的判断条件不成立,也就是返回一个false,则继续向下进行判断,依次的判断每一个if所带

的判断条件,如果成立,就执行该if所带的大括号中的代码,如果不成立,则继续向下判断,

如果每个if所带的判断条件都不成立,就看当前这个if else-if结构中是否存在else。

如果有else的话,则执行else中所带的代码,如果没有else,则整个 if-else if神马都不做。

else可以省略。

案例:

根据上边你就是会看出if else-if 在条件特别多的时候会导致代码很长很不好看,这时我们会用另一个来替换

switch-case

用来处理多条件的定值的判断。

语法:

switch(变量或者表达式的值)
{
  case 值1:要执行的代码;
  break;
  case 值2:要执行的代码;
  break;
  case 值3:要执行的代码;
  break;
  ..........
  default:要执行的代码;
  break;
}

执行过程:程序执行到switch处,首先将括号中变量或者表达式的值计算出来,

然后拿着这个值依次跟每个case后面所带的值进行匹配,一旦匹配成功,则执行

该case所带的代码,执行完成后,遇到break。跳出switch-case结构。

如果,跟每个case所带的值都不匹配。就看当前这个switch-case结构中是否存在

default,如果有default,则执行default中的语句,如果没有default,则该switch-case结构

什么都不做。

案例:

最后来个彩蛋:

break ,continue ,return 的区别及作用:

第一:break语句通常用在循环语句和开关语句中,当break语句用于do-while、for、while循环语句中时,可使程序终止循环而执行循环后面的语句, 通常break语句总是与if语句联在一起,即满足条件时便跳出循环。例如:注意:

1) break语句对if-else的条件语句不起作用。

2) 在多层循环中, 一个break语句只向外跳一层。

第二:continue语句的作用是跳过循环本中剩余的语句而强行执行下一次循环。continue语句只用在for、while、do-while等循环体中,常与if条件语句一起使用,用来加速循环。其实就是continue跳过一次循环以及后面的语句,进行下次循环。

第三: return语句是将函数的值返回主调函数。例如:

return  语句的一般形式为:

return 表达式

或者为:

return (表达式)

好了 , 本篇就到这里了,另本篇提供的案例只有截图,没有运行的结果,请自行处理咯。希望能对初学者带来帮助,更希望大神能带带我们,带我们装逼,带我们飞。。。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持我们!

(0)

相关推荐

  • ASP.NET MVC5网站开发之业务逻辑层的架构和基本功能 (四)

    业务逻辑层在Ninesky.Core中实现,主要功能封装一些方法通过调用数据存储层,向界面层提供服务. 一.业务逻辑层的架构 Ninesky.Core包含三个命名空间Ninesky.Core.Ninesky.Core.Types.Ninesky.Core.General. Ninesky.Core包含模型和功能实现,Ninesky.Core.Types是项目用到的一些类型的定义,Ninesky.Core.General是项目用到的一些方法的定义. 1.Ninesky.Core命名空间的结构 Ni

  • asp.net中for和do循环语句用法分享

    本示例的FOR循环创建一个Mandelbrot图像. 复制代码 代码如下: using System; namespace a { class Program { public static void Main(string[] args) { double realCoord,imagCoord; double realTemp,imagTemp,realTemp2,arg; int iterations; for (imagCoord=1.2;imagCoord>=-1.2;imagCoor

  • asp.net运算符之逻辑运算符以及其他运算符介绍与实例

    逻辑(布尔型)运算符用于对boolean型的结果的表达式进行运算,运算的结果都是boolean型.其运算结果如下所示: 运算符 运算 例子 结果 & AND(与) false&true false | OR(或) false|true true ^ XOR(异或) false^true true ! NOT(非) !false true && AND(短路) false&&true false || OR(短路) false||true true 下面对一些

  • asp.net使用for循环实现Datalist的分列显示功能

    服务器控件虽然用起来方便,但是也牺牲了性能,有些时候用起来显得大而无当.希望先进朋友多多指教. 复制代码 代码如下: /// <summary> /// 工程业绩--用for循环代替了DataList多列显示,得到2行四列的表格,需要内存表的8行数据 /// </summary> private void GcyjShow() { StringBuilder sb = new StringBuilder(); ProductBLL pb = new ProductBLL(); Da

  • asp.net for循环语句第1/2页

    for循环的格式为: for([初始化表达式];[条件表达式];[迭代表达式 ]){          //语句块}其中:[初始化表达式];[条件表达式];[迭代表达式 ]都是可选的,[条件表达式]必须是一个布尔表达式. 执行步骤为:第一步:开始执行初始化表达式,只执行一次.第二步:开始执行条件表达式(若为空,则返回true),若为true,则执行大括号中的语句:若为false,则直接跳到for的结束点.第三步:开始执行迭代表达式+条件表达式.第四步:若条件表达式为true,则执行大括号中的语句

  • .NET中RDLC循环处理数据的应用分析

    当我们在使用RDLC开发报表的时候,如果数据源内容如下. 复制代码 代码如下: private List<UserData> CreateDataSet(){    List<UserData> userDataSet = new List<UserData>();    userDataSet.Add(new UserData() { Name = "Clark", Age = 18 });    userDataSet.Add(new UserD

  • ASP.NET MVC5 网站开发框架模型、数据存储、业务逻辑(三)

    前面项目的层次和调用关系都说明了,关系如下图 采用三层架构的时候,研究过BLL层的必要性,觉得业务逻辑完全可以在controller里实现,没有必要单独做一个项目,另一个分层多了会影响性能.后来我还是把业务逻辑独立出来,原因如下: 业务逻辑写进controller里代码看着比较混乱,时间久了代码容易理不清. 在controller里直接写逻辑重复代码会不较多,开发效率低. 分项目有利于代码重用,有时候可以直接拿到其他项目中稍作修改就可以用. 对于性能我觉得分层多了肯定会有影响,但是不会很大.现在

  • 详解.net循环、逻辑语句块(基础知识)

    循环.逻辑语句块 好久不写博客了,断更了好几天了,从上周五到今天,从北京到上海,跨越了1213.0公里,从一个熟悉的城市到陌生的城市,还好本人适应力比较好,还有感谢小伙伴的接风咯,一切都不是事,好了,进入正题: 本篇还是.NET 基础部分咯,主要简述循环,判断: 循环: for循环 语法: for(表达式1;表达式2;表达式3) { 循环体; } 表达式1一般为声明循环变量,记录循环的次数(int i=0;) 表达式2一般为循环条件(i<10) 表达式3一般为改变循环条件的代码,使循环条件终有一

  • 详解mpvue开发微信小程序基础知识

    一.mpvue简介 mpvue 是一个使用 Vue.js 开发小程序的前端框架.框架基于 Vue.js 核心,mpvue 修改了 Vue.js 的 runtime 和 compiler 实现,使其可以运行在小程序环境中,从而为小程序开发引入了整套 Vue.js 开发体验.mp 即 mini program 的缩写. 二.mpvue快速入门 ① 通过脚手架引入mpvue模板 vue 3.0已经不支持vue init命令了,所以需要单独安装@vue/cli-init,安装好之后,就可以按以下操作步骤

  • 详解Android中Service服务的基础知识及编写方法

    首先,让我们确认下什么是service? service就是android系统中的服务,它有这么几个特点:它无法与用户直接进行交互.它必须由用户或者其他程序显式的启动.它的优先级比较高,它比处于前台的应用优先级低,但是比后台的其他应用优先级高,这就决定了当系统因为缺少内存而销毁某些没被利用的资源时,它被销毁的概率很小哦. 那么,什么时候,我们需要使用service呢?         我们知道,service是运行在后台的应用,对于用户来说失去了被关注的焦点.这就跟我们打开了音乐播放之后,便想去

  • Python 专题二 条件语句和循环语句的基础知识

    前面讲述了"专题一.函数的基础知识",而这篇文章讲述的Python的条件语句和循环语句的基础知识.主要内容包括: 1.条件语句:包括单分支.双分支和多分支语句,if-elif-else 2.循环语句:while的使用及简单网络刷博器爬虫 3.循环语句:for的使用及遍历列表.元组.文件和字符串 前言: 语句块 在讲诉条件语句.循环语句和其他语句之前,先来补充语句块知识.(前面讲函数时已经用到过) 语句块并非一种语句,它是在条件为真(条件语句)时执行或执行多次(循环语句)的一组语句.在代

  • 详解Shell if else语句的具体使用方法

    和其它编程语言类似,Shell 也支持选择结构,并且有两种形式,分别是 if else 语句和 case in 语句.本节我们先介绍 if else 语句,case in 语句将会在<Shell case in>中介绍. 如果你已经熟悉了C语言.Java.JavaScript 等其它编程语言,那么你可能会觉得 Shell 中的 if else 语句有点奇怪. if 语句 最简单的用法就是只使用 if 语句,它的语法格式为: if condition then statement(s) fi c

  • 详解Python 循环嵌套

    Python 语言允许在一个循环体里面嵌入另一个循环. Python for 循环嵌套语法: for iterating_var in sequence: for iterating_var in sequence: statements(s) statements(s) Python while 循环嵌套语法: while expression: while expression: statement(s) statement(s) 你可以在循环体内嵌入其他的循环体,如在while循环中可以嵌

  • 详解java中if语句和switch的使用

    if语句 说起if语句,那么不得不提起三元运算符 a>b?c=0:c=1; 如果a>b结果为true,那么c=0,为false,c=1 那么下面看下if语句 if(a>b)c=0; 如果a>b为true,那么c=0 是不是觉得很像,但是还是觉得有一点不像 那么 if(a>b){ c = 0; }else{ c = 1; } 这样是不是看着很像了,如果a>b结果为true,那么c=0,为false则走else里面的内容,c=1 多条件判断 public class Dem

  • c#入门之循环语句使用详解(for循环、do/while)

    记得第一次学编程的时候,就听说过一句话:"新手学习和掌握一门编程语言是很容易的,但是如果你学会了某种编程语言,再去学习新的语言,就很难掌握了",现在深深地感受到了这方面的阻力. 其实流程控制.循环,包括面向对象这些知识,基本所有语言都是相通的,唯一的区别就在于书写时的格式.规范不一致.而这些方面的差异,又是比较细微的,所以往往在学的时候依靠经验能很快理解,但过后却发现并未能使(掌)用(握). do / while 循环的意义,其实就是重复执行语句,当然,还会有相应的条件判断,不然就成死

  • 详解Linux LVM逻辑卷配置过程(创建,增加,减少,删除,卸载)

    Linux LVM逻辑卷配置过程详解 许多Linux使用者安装操作系统时都会遇到这样的困境:如何精确评估和分配各个硬盘分区的容量,如果当初评估不准确,一旦系统分区不够用时可能不得不备份.删除相关数据,甚至被迫重新规划分区并重装操作系统,以满足应用系统的需要. LVM是Linux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上.文件系统之下的一个逻辑层,可提高磁盘分区管理的灵活性.RHEL5默认安装的分区格式就是LVM逻辑卷的格式,需要注意的是/boot分区不能基于LVM创建,必须独立出

  • 详解Python中with语句的用法

    引言 with 语句是从 Python 2.5 开始引入的一种与异常处理相关的功能(2.5 版本中要通过 from __future__ import with_statement 导入后才可以使用),从 2.6 版本开始缺省可用(参考 What's new in Python 2.6? 中 with 语句相关部分介绍).with 语句适用于对资源进行访问的场合,确保不管使用过程中是否发生异常都会执行必要的"清理"操作,释放资源,比如文件使用后自动关闭.线程中锁的自动获取和释放等. 术

随机推荐