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 ...
随机推荐
- centos 6.5下安装文件上传下载服务
centos 6.5下安装文件上传下载服务 由于每次在CentOS中要下载一些配置文件到物理机,和上传一些文件到服务器,导致来回的开启ftp软件有点麻烦,这里我们可以使用文件上传下载服务,来解决上传和 ...
- 浅谈Java分页技术
话不多言.我们要实现java分页技术,我们首先就需要定义四个变量,他们是: int pageSize;//每页显示多少条记录 int pageNow;//希望现实第几页 int pageCount; ...
- PHP实现验证码图片
<?php header("Content-type: image/png"); session_start(); $authnum = ''; $str = 'abcdef ...
- file_get_contents无法请求https连接的解决方法
PHP.ini默认配置下,用file_get_contents读取https的链接,就会如下错误: Warning: fopen() [function.fopen]: Unable to find ...
- 处理div 在IE6 IE7 IE8 下不居中的问题
具体处理方式如下:1 .html 顶部加入:DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "h ...
- jQuery replaceWith replaceAll end的用法
jQuery replaceWith replaceAll end的用法 <%@ page language="java" import="java.util.*& ...
- Canvas文本绘制
文字绘制: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...
- js制作ppt阅读文档类型
前几天开发中,客户要求在页面中展示一个类似ppt文档的一个东西,用轮播展示,但是有缩略图,和展示的大图,本想找些插件来做,后来想想,自己试下吧.. 有些简陋,但是能用,毕竟一行一行写的,留下来当笔记用 ...
- iOS 多线程NSThread理解与场景示例
NSThread是相对GCD和NSOperationQuene而言,比较轻量级的一种多线程处理方式. 但同时,它的弊端就是需要自己管理线程的生命周期,以及线程同步:而另外两种不需要自己管理. 常见方法 ...
- TypeScript入门指南(JavaScript的超集)
TypeScript入门指南(JavaScript的超集) 你是否听过 TypeScript? TypeScript 是 JavaScript 的超集,TypeScript结合了类型检查和静态分析 ...