if(){}else 语句的正确写法以及它的嵌套使用
if(一个返回bool值的条件表达式)
{
程序块
}
else{}
它的执行过程我们可以通过一个程序来了解
static void Main(string[] args)
{
if (score >= ) // 条件1
{
Console.WriteLine("A");
}
else if (80 =< score && score < 90) //条件2 这里的score<90根本不执行,没有理解if else if的本质 {
Console.WriteLine("B");
上面的写法实际上没有理解if else if的本质(下划线为错误的判断条件)
if else if的本质是:如果if条件不满足则执行Else中的条件判断。基于这个理解,上面的if语句条件1不满足的话,实际上就意味着score《90
所以条件2中的子条件score<90是多次一举!或者else if (score<90 && score <=80) ,这里的Score<90 在条件1为假后,肯定为真!
提示用户输入用户名,然后再提示用户输入密码,如果用户名是"admin"和密码是"888888",那么提示正确
否则,如果用户名不是Admin,则提示用户名不存在,如果用户名是Admin则提示密码不正确.
static void Main(string[] args)
{
Console.WriteLine("请输入用户名");
string username = Console.ReadLine(); Console.WriteLine("请输入密码");
string password = Console.ReadLine(); if (username == "admin" &&
password == "")
{
Console.WriteLine("密码正确");
}
else
{
if (username != "admin")
{
Console.WriteLine("用户名不正确");
}
else if (password != "")
{
Console.WriteLine("密码不正确");
}
} Console.ReadKey(); }
上面的写法,是Else里面嵌套了If Else。下面采用另外一种写法,是If Else If Else
static void Main(string[] args)
{
Console.WriteLine("请输入你的用户名");
string username = Console.ReadLine(); Console.WriteLine("请输入你的密码");
string password = Console.ReadLine(); // 下面的If Else If Else 可以成对理解,比如else if else 还是可以作为一个来理解
if (username == "admin" && password == "")
{
Console.WriteLine("用户名和密码正确");
}
else if (username != "admin")
{
Console.WriteLine("用户名不正确");
}
else // 注意理解上面If Else If
{
Console.WriteLine("密码不正确");
} Console.ReadKey();
}
}
If Else 语句是否使用{}
通常if表达式后只有一个语句的话,不使用{}.同样的下面的形式却有不同的结果.
if (true)
string test ="test"; // 这个会发生编译错误! if (true)
{
string test = "test"; // 这样子的写法正确
}
Else与靠近If结合
如果if 表达式后面只有一个语句,通常会不写{},但是这个习惯也可能导致程序出现错误;其实在实际情况下,通常以为自己会If Else,但是实际上If Else的组合起来可以构造非常复杂的业务逻辑.而且好的If Else组合一看就明白业务含义,但是差的If Else就容易误导或者非常难理解这段If Else的含义.最主要要理解if else的逻辑顺序。
if(){}else 语句的正确写法以及它的嵌套使用的更多相关文章
- 【记录】AutoMapper Project To OrderBy Skip Take 正确写法
AutoMapper:Queryable Extensions 示例代码: using (var context = new orderEntities()) { return context.Ord ...
- 使用runloop阻塞线程的正确写法
使用runloop阻塞线程的正确写法 runloop可以阻塞线程,等待其他线程执行后再执行. 比如: @implementation ViewController{ BOOL end;}…– ( ...
- oracle 数据库中,应用程序里的连接探測语句的正确使用
oracle 数据库中,应用程序里的连接探測语句的正确使用 本文为原创文章.转载请注明出处:http://blog.csdn.net/msdnchina/article/details/3851376 ...
- obj.style.z-index的正确写法
obj.style.z-index的正确写法 今天发现obj.style.z-index在js里面报错,后来才知道在js里应该把含"-"的字符写成驼峰式,例如obj.style.z ...
- C++中虚继承派生类构造函数的正确写法
最近工作中某个软件功能出现了退化,追查下来发现是一个类的成员变量没有被正确的初始化.这个问题与C++存在虚继承的情况下派生类构造函数的写法有关.在此说明一下错误发生的原因,希望对更多的人有帮助. 我们 ...
- php中mysql语句的基本写法
php中mysql语句的基本写法 php作为一门后台语言必须要与mysql数据库打交道,做到将内容存储到数据库以及数据库数据读写的操作,那么下面就来说下最近学习的一些东西: 在具体将之前先说一下编码的 ...
- ***PHP $_FILES函数详解 + PHP文件上传 move_uploaded_file() 参数的正确写法
PHP $_FILES函数详解 在PHP中上传一个文件建一个表单要比ASP中灵活得多.具体的看代码. 如: 复制代码代码如下: <form enctype="multipart/fo ...
- jquery中获取radio选中值的正确写法
错误写法: //只在IE下有作用,其他浏览器均获取的为第一个单选框的值 $('input[type=radio]').val(); 正确写法为: //兼容所有浏览器写法 $('input[type=r ...
- 判断下列语句是否正确,如果有错误,请指出错误所在?interface A{
判断下列语句是否正确,如果有错误,请指出错误所在? interface A{ int add(final A a); } class B implements A{ long add(final A ...
随机推荐
- Voilin 与 乐谱
小提琴属于高音乐器,所以它使用的是高音谱号: 用音的时候,线不够用,那就得上加线,或下加线. 小提琴的弦对应的五线谱的位置为: 第四弦,对应五线谱的下加两条线的下面 第三弦,对应五线谱的第一线的下面 ...
- Linux平台使用指令记录
ssh gaea@10.101.89.156 svn checkout http://svn.alibaba-inc.com/repos/ali_china/olps/rights/branches/ ...
- js模块化开发——模块的写法
随着网站逐渐变成"互联网应用程序",嵌入网页的Javascript代码越来越庞大,越来越复杂. 网页越来越像桌面程序,需要一个团队分工协作.进度管理.单元测试等等......开发者 ...
- Iframe 自适应高度并实时监控高度变化的js代码
不得不用到iframe,且被强烈要求不能让它出现滚动条!嵌入的页面肯定是高度不一的,页面中也不能出现大片空白,所以也不能写死高度!真是麻鬼烦啊!google N次 + 百度M次 + 试验了1605次之 ...
- HDU-1996-汉诺塔VI
题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1996 其实它就是求移动的所有可能,也就是n个盘子摆在三个塔上的任何可能的种数.可以这么思考这个问题:n ...
- Adapter接口及实现类
Adapter本身只是一个接口,它派生了ListAdapter和SpinnerAdapter两个子接口,其中ListAdapter为AbsListView提供列表项,而SpinnerAdapter为A ...
- HTML 多媒体、Object 元素、音频、视频
Web 上的多媒体指的是音效.音乐.视频和动画. 现代网络浏览器已支持很多多媒体格式. 什么是多媒体? 多媒体来自多种不同的格式.它可以是您听到或看到的任何内容,文字.图片.音乐.音效.录音.电影.动 ...
- Flash Socket通信的安全策略问题 843端口
1.问题描述 将flash发布为html格式后,加载页面后,swf无法与服务器进行socket通信.Flash端显示的错误为:securityErrorHandler信息: [Securi ...
- 安装使用GYP,并编译libpomelo2
1.然后是下载GYP,它是由 Chromium 团队开发的跨平台自动化项目构建工具,安装后可以使用其构建出libpomelo的vs工程项目,再而进行编译,这步先下载,地址: http://code.g ...
- python实现二分查找与冒泡排序
二分查找,代码如下: def binarySearch(l, t): low, high = 0, len(l) - 1 while low < high: 'print low, high' ...