java中的if-Switch选择结构
字随笔走,笔随心走,随笔,随心。纯属个人学习分析总结,如有观者还请不啬领教。
1.if选择结构
什么是if结构:if选择结构是根据判断结果再做处理的一种语法结构。
起语法是:
if(判断条件){
操作内容
}
if又包含if-else & 多重if和嵌套if 三种。
if-else类型 嵌套if 多重if
if(判断条件){ if(判读条件){ if(判读条件){
操作内容 if(判读条件){ 操作内容
}else{ 操作内容 }else if{
操作内容 } 操作内容
} } }else{ 操作内容 }
if(){}用于简单的判断,而这三种主要用于复杂判断。
流程:程序由上至下逐条执行。首先判断条件是否成立,成立则向下执行else{}大括号中的内容。
生活中当我们为来完成某件事,但是有前提条件的时候,那么我们就可以用到if选择结构了。
例如:小明年满18岁,做车就要买票了。由此可以看出并推断,如果小明需要买票,那么小明就的年龄就必须大于等于18。
年龄>=18就要买票,反之,年龄<18则不用买票。那么我就可以用if结构判断并得到结果。
int age=18;
if(age>=18){
System.out.println("小明的年龄大于18需要买票");
}else{
System.ou.println("小明的年龄小于18不需要买票");
}
注意事项:
1.当if关键字后的一对大括号里有有一个语句时,可以省略大括号,但是为了避免有多个语句时遗忘大括号,以及保持程序的整体风格一致,建议不要省略if结构的大括号。
下面讲解下复杂情况下的if选择结构
复杂情况下的if选择结构要用到多个判断条件,既然后多个条件,就不得不说一下常用的逻辑运算符了。
常用逻辑运算符有:&&(与,并且) ||(或,或者) !(非)1.&&
1.&& 条件1&&条件2 两个条件同时为真,则结果为真;连个条件有一个为假,则结果为假。
2.|| 条件1||条件2 两个条件一个为真,则结果为真;两个条件同时为假,则结果为假。
3! 条件1!条件2 条件为真时,结果为假;条件为假时,结果为真。
示例:张三的java成绩>90 并且张三的music成绩>80
或者
张三的java成绩==100 并且张三的music成绩>70
注意事项:当运算符比较多,无法确定运算符执行的顺序时,可以使用小括号控制。
第一种方法:score1>90&&score2||score1==100&&score2>70
第二种方法:(score1>90&&score2)||(score1==100&&score2>70)
建议使用第二种方法,更能清晰表明条件
*************************************************************************************
2if-else选择结构
if-else的语法结构是;
if(判断条件){
执行内容
}else{
执行内容 }
上面我们学习了if(){}基础选择结构
if-else的语法结构就是在if结构的基础上添加了一个else{}(否则)语句。顾名思义,当我们给出一个语句,并设置判断条件,成立则执行if(){}中的大括号中的内容,逐条执行,这时来到else,但它并不会在执行完if(){}的大括号中的内容继续执行else后的大括号中的内容。那么什么时候执行呢?就是当if()小括号中的判断条件不成立时才执行else{}大括号中的内容。
即:条件成立则执行if(){}大括号的内容,否则执行else{}大括号中的内容。
示例:如果张三的考试成绩大于90分,老师就奖励他,否则惩罚。
public class Test{
public static void main(String[] args){ int score=90; if(scor>90){ System.ou.println("奖励"); }else{
System.ou.println("惩罚");
}
3.多从if结构
多重if的语法结构;
if(条件1){
代码块1
}else if(条件2){
代码块2
}else{
代码块3
}
那么多重if结构是怎么执行的呢?如上图,首先,程序判断条件1,如果成立,则执行代码块1,然后跳出这个多重if选择结构,如果不成立,则判断条件2,条件2成立,则执行代码块2,然后跳出这个多重if选择结构,如果条件2不成立,则执行代码块3,然后跳出这个多重if选择结构。
示例:如果考试成绩>=80为优,>=60为中低于60则为差,假设张三的成绩是70,判读他的成绩是哪一种。
public class Test{
public static void main(String[] args){
int score=70;
fi(score>=80){
System.out.println("优");
}else if(score>=60){
System.out.println("中");
}else {
System.out.println("差");
}
}
}
优势:多重if选择结构在解决需要判断的条件是连续的区间时有很大的优势。
注意事项:多从if选择结构最后的else可以忽略不谢。
*************************************************************************************
3.嵌套if选择结构
嵌套if选择结构语法;
if(条件1){
if(条件2){
代码块1
}else{
代码块2
}
}else{
代码块3
}
示例:
学校举行运动会,百米赛跑成绩在10秒以内的学生有资格进入决赛,根据性别分为男子组和女子组。
现在我们用嵌套if选择结构来把这道题代码化。
import java.util.*;
public class Test{
public static void main(String[] args){
Scanner input=new Scanner(System.in);
System.out.print("请输入比赛成绩(s):");
double score=input.nextDouble();
System.out.print("请输入比赛成绩(s):");
double score=input.nextDouble();
if(score<10){
if(gender.equals("男")){
System.out.print("进入男子组");
}else if(gender.equals("女")){
System.out.print("进入女子组");
}
}else{
System.out.print("您未进入决赛");
}
}
}
注意事项:
1.只有当满足外层if选择结构的条件时,才会判断内层if选择结构的条件。
2.else总是与它签名最近的那个缺少else的if配对。
*************************************************************************************
至此,这一章对于选择结构的学习到此结束,希望大家勤加练习,早日掌握。谢谢。
java中的if-Switch选择结构的更多相关文章
- Java流程控制04——Switch选择结构
switch 多选择结构 switch case 语句判断一个变量与一系列值中某个值是否相等,每个支撑位一个分支. switch语句中的变量类型可以是: byte short int 或者 char ...
- java中的结构--switch选择结构
if-switch 选择结构 switch结构可以更好的解决等值判断问题switch 选择结构的语法:switch (表达式){ case 常量 1: //代码块1: break; case 常量 2 ...
- Java(4)switch选择结构
一.switch结构(开关语句)的语法 switch(表达式 ){--->类型为int.char case 常量1 :--->case 结构可以有多个 //语句块1 break;---& ...
- 房上的猫:switch选择结构,与选择结构总结
switch选择结构: 一.定义: switch选择结构,可以方便地解决等值判断问题二.语法: switch(表达式){ case 常量1: //代码块1; break; c ...
- 选择结构二switch选择结构
在上一章节我们讲解了if选择结构 本章我们学习 switch选择结构 还要知道if选择结构和switch结构的区别 为什么学习了if选择结构还要学习switch选择结构 以及 两种选择结构的运用 ...
- Java运算符及顺序、选择结构
:运算符(掌握) ()算术运算符 A:+,-,*,/,%,++,-- B:+的用法 a:加法 b:正号 c:字符串连接符 C:/和%的区别 数据做除法操作的时候,/取得是商,%取得是余数 D:++和- ...
- 大话Java中的哈希(hash)结构(一)
o( ̄▽ ̄)d 小伙伴们在上网或者搞程序设计的时候,总是会听到关于“哈希(hash)”的一些东西.比如哈希算法.哈希表等等的名词,那么什么是hash呢? 一.相关概念 1.hash算法:一类特殊的算法 ...
- Switch 选择结构
switch 选择器 一.语法 switch(变量名){ case 情况1: //代码块 break: case 情况1: //代码块 break: default(默认): //代码块 break: ...
- Java中Map<Key, Value>存储结构根据值排序(sort by values)
需求:Map<key, value>中可以根据key, value 进行排序,由于 key 都是唯一的,可以很方便的进行比较操作,但是每个key 对应的value不是唯一的,有可能出现多个 ...
- 说说Java中你不知道switch关键字
Switch语法 switch作为Java内置关键字,却在项目中真正使用的比较少.关于switch,还是有那么一些奥秘的. 要什么switch,我有if-else 确实,项目中使用switch比较少的 ...
随机推荐
- [转]ZigBee On Windows Mobile--ZigBee模块天线设计
原文出处:http://www.cnblogs.com/dearsj001/archive/2008/10/26/1320029.html
- Java开发中经典的小实例-(if(参数){}else{})
import java.util.Scanner; public class Calculate { public static void main(String[] args) { ...
- [Effective Java]第七章 方法
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- 【分享】通过Excel生成批量SQL语句,处理大量数据的好办法
我们经常会遇到这样的要求:用户给发过来一些数据,要我们直接给存放到数据库里面,有的是Insert,有的是Update等等,少量的数据我们可以采取最原始的办法,也就是在SQL里面用Insert into ...
- 测算Redis处理实际生产请求的QPS/TPS
测算Redis处理实际生产请求的QPS/TPS Benchmark工具 redis发布版本中自带了redis-benchmark性能测试工具; 示例: 使用50个并发连接,发出100000个请求,每个 ...
- offsetLeft与style.left区别
在javascript中经常遇到style.left和offsetLeft,那么它们有什么区别呢?今天我们来分析下 offsetLeft:获取当前元素相对于父元素的左侧偏移量,比如该元素设置为rela ...
- .net ftp上传文件方法
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI ...
- Android 可拖动列表项的ListView
需求分析 一个界面内两个ListView 我关注的栏目列表 上面的要长按后可拖动排序 点击减号后列表项消失 下面列表增加一行 同时存储相应字符串到本地作为标记 未关注栏目列表 普通ListView 点 ...
- Android 视频投射之NanoHTTPD
Android 视频投射之NanoHTTPD 号称用一个java文件实现Http服务器 有必要对其源码及例子进行分析 public abstract class NanoHTTPD { //异步执行请 ...
- android 自定义进度条颜色
android 自定义进度条颜色 先看图 基于产品经理各种自定义需求,经过查阅了解,下面是自己对Android自定义进度条的学习过程! 这个没法了只能看源码了,还好下载了源码, sources\b ...