C#中if语句使用概述

C#语言有很多值得学习的地方,这里我们主要介绍C#使用if语句。如果想根据一个布尔表达式的结果选择执行两个不同的代码块,就可以C#使用if语句。
理解if语句的语法

if语句的语法格式如下(if和else是关键字):

代码如下:

if ( booleanExpression ) 
statement-1; 
else 
statement-2;

如果booleanExpression求值为true,就运行 statement-1;否则就运行statement-2。else关键字和后续的statement-2是可有可无的。如果没有else子句,那么在booleanExpression为false的前提下,什么都不会发生。

例如,以下if语句用于递增一个秒表的秒针(暂时忽略分钟)。如果seconds的值是59,就重置为0;否则就使用操作符++来递增:

代码如下:

int seconds; 
... 
if (seconds == 59) 
seconds = 0; 
else 
seconds++;

只使用布尔表达式!

C#使用if语句中的表达式必须放在一对圆括号中。除此之外,表达式必须是布尔表达式。在另一些语言中(尤其是C和C++),还可以使用一个整数表达式,编译器能自动将整数值转换成true(非零值)或false(零值)。C#不允许这样做。如果写这样的一个表达式,编译器会报错。

假如在if语句中不慎写了一个赋值表达式,而不是执行一个相等性测试,C#编译器也能识别你的错误。例如:

代码如下:

int seconds; 
... 
if (seconds = 59) // 编译时错误 
... 
if (seconds == 59) // 正确

不慎而写成赋值表达式,是C和C++程序容易出现bug的另一个原因。在C和C++中,会将所赋的值(59)悄悄地转换成一个布尔值(任何非零的值都会被视为true),造成每次都必定执行C#使用if语句之后的代码。

最后,可以将一个布尔变量作为表达式使用,如下例所示:

代码如下:

bool inWord; 
... 
if (inWord == true) // 可以,但不常用 
... 
if (inWord) // 更好

(0)

相关推荐

  • c#后台输出javascript语句示例程序

    复制代码 代码如下: using System;using System.Web;using System.IO;using System.Security.Cryptography;using System.Text.RegularExpressions; namespace MyOraComm{/// <summary>/// FuncTion 的摘要说明./// </summary>public class Function{  public Function()  {   

  • c#循环中产生伪随机数

    这种结果的原因在于,Random()函数的默认种子是时间,但在循环中产生随机数时,由于运算速度太快,用做种子的时间是相同的(毫秒级),因此产生的随机数序列是相同的,这样最终的随机数就会相同.(基于"线性同余法"的随机数发生器) 解决方法是,产生一个全局唯一标识符,使用它的哈希值来做种子产生随机数.代码如下: 复制代码 代码如下: using System; using System.Collections.Generic; using System.Linq; using System

  • C# 分支与循环介绍

    1.顺序结构: --> 所谓顺序结构 顾名思义,就是按顺序执行,在C#中所有的代码都是由上至下的顺序执行. 2.分支结构: --> 三元表达式 ?:,if...else... , switch 语句.  即所谓的条件语句. 3.循环结构: --> while, do...while... ,for ,foreach语句. 即所谓的循环语句 条件语句: if语句 翻译过来 就是  如果 (...)  就 (...) else if 配对的规则: else 总是与它最近的if 配对,除非用花

  • C#页面之间跳转功能的小结

    引言   ASP.NET提供了卓越的事件驱动编程模型,让开发者简化了应用程序的总体设计,但是这个也造成了它固有的一些问题,例如,使用传统的ASP里,我们可以通过使用POST方法很容易地实现页面间传递值,同样的事情,在使用事件驱动编程模型的ASP.NET就不是那么容易了,当然了,我们仍然有一些方法可以实现同样的功能.本文将试着使用不同的可能的方法来解决这个问题,但可以预见是,本文将包含使用querystring,session变量以及server.Transfer方法来实现页面间的值传递. 使用Q

  • C#数据结构之循环链表的实例代码

    复制代码 代码如下: public class Node    {        public object Element;        public Node Link; public Node()        {            Element = null;            Link = null;        } public Node(object theElement)        {            Element = theElement;      

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

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

  • c#循环左移字符示例

    循环左移字符例如:abcde循环左移2个字符就是cdeab 复制代码 代码如下: using System;using System.Collections.Generic;using System.Linq;using System.Text; namespace 循环左移{    class Program    {         static string reverse(  char[] char2, int i, int j)        { for (int begin=i,en

  • C#使用带like的sql语句时防sql注入的方法

    本文实例叙述了在拼接sql语句的时候,如果遇到Like的情况该怎么办. 一般采用带like的SQL语句进行简单的拼接字符串时,需要开率遇到sql注入的情况.这确实是个需要注意的问题. 这里结合一些查阅的资料做了初步的整理. 如这样一个sql语句: select * from game where gamename like '%张三%' 用c#表示的话: string keywords = "张三"; StringBuilder strSql=new StringBuilder();

  • asp.net(c#)网页跳转七种方法小结

    ①response.redirect 这个跳转页面的方法跳转的速度不快,因为它要走2个来回(2次postback),但他可以跳 转到任何页面,没有站点页面限制(即可以由雅虎跳到新浪),同时不能跳过登录保护.但速度慢是其最大缺陷!redirect跳转机制:首先是发送一个http请求到客户端,通知需要跳转到新页面,然后客户端在发送跳转请求到服务器端.需要注意的是跳转后内部空间保存的所有数据信息将会丢失,所以需要用到session. 实例 Example that uses Redirect [C#;

  • C#条件语句、循环语句(if、while)

    一.程序的三种结构 顺序结构分支结构循环结构 二.条件语句 if 语句是最有用的控制结构之一. if - else -语句的语法:if (布尔表达式)执行操作的语句或if (布尔表达式)执行操作的语句else执行操作的语句switch 语句的格式:switch(控制表达式){case    常量表达式1:语句组1;[break;]case   常量表达式2:语句组2;[break;]--case    常量表达式n:语句组n;[break;][default:语句组 n+1;[break;]]}

  • C#中while循环语句用法实例详解

    本文实例讲述了C#中while循环语句用法.分享给大家供大家参考.具体实现方法如下: 在C#中while循环是我们经常会用到的一种循环语句,while循环特点是直到条件为零时才跳出循环,当然中间可以利用其它函数直接跳出,对于while的具体用法有必要做一个较为详尽的分析. 先来说Foreach和For的区别,Foreach是针对对象进行遍历的,不需要定义循环次数,但是有个缺点,Foreach遍历取的是只读数据,不能在Foreach中进行对象的增删改,而For循环就可以.这个改成while循环的代

  • C#适用于like语句的SQL格式化函数

    本文实例讲述了C#适用于like语句的SQL格式化函数,分享给大家供大家参考. 具体实现代码如下: 复制代码 代码如下: /// <summary> /// 对字符串进行sql格式化,并且符合like查询的格式. /// </summary> /// <param name="str">要转换的字符串</param> /// <returns>格式化后的字符串</returns> public static str

  • C#调用SQL语句时乘号的用法

    一般来说,在ADO中,我们需要在SQL语句中使用乘法运算,可是添加'*'以后执行程序总是会出错,这是因为'*'与sql中的'*'关键字重合了,因此编译就会出错. 解决办法为:将乘法运算放到sql语句外面,将结果放入一个变量中,然后在sql语句中引用即可. 如下示例所示: int count = (this.AspNetPager1.CurrentPageIndex-1)*this.AspNetPager1.PageSize; string sql = " select top "+co

随机推荐