廖雪峰Java1-3流程控制-3条件判断
1.if条件判断的格式
if (条件) { 代码块 }
if (条件) { 代码块1 } else { 代码块2 }
if (条件1) { 代码块1 } else if { 代码块2 } else { 代码块3 }
2.整型判断
条件判断注意的事项:
- 注意判断顺序
- 注意边界条件
int n = 100;
if (n >= 90){
System.out.println("优秀");
}else if(n >= 60){
System.out.println("及格");
}else{
System.out.println("挂科");
}
3.浮点数判断
- 浮点数 == 判断不靠谱 利用差值小于某个临界值判断
double x = 1 - 9.0 / 10;
if (x == 0.1){
System.out.println("x is 0.1");
}else{
System.out.println("x is not 0.1");
}

```#java
double x = 1 - 9.0 / 10;
//修改上面的代码,改为范围比较
if (Math.abs(x - 0.1)
# 4.引用类型判断
* 引用类型 == 判断是否指向同一对象
* equals()判断内容是否相等
* 如果变量为null,调用equals()会报错。利用短路运算符&&可以避免这个问题
```#java
String s1 = "hello";
String s2 = "HELLO".toLowerCase();
if (s1 == s2){
System.out.println("s1 == s2");
}
if (s1.equals(s2)){
System.out.println("s1.equals(s2)");
}
String s3 = null;
if (s3 != null && s3.equals("hello")){
System.out.println("yes");
}
```

5.总结
- if ...else可以做条件判断,else是可选的
- 只有一个执行语句可以省略{},但不推荐省略{}
- 多条件串联要注意判断顺序
- 要注意边界条件
- 要注意浮点数相等判断
- 引用类型判断相等用equals(),注意避免NullPointerException
廖雪峰Java1-3流程控制-3条件判断的更多相关文章
- Python流程控制-2 条件判断
条件判断 条件判断是通过一条或多条判断语句的执行结果(True或者False)来决定执行的代码块. 在Python语法中,使用if.elif和else三个关键字来进行条件判断. if语句的一般形式如下 ...
- ansible-playbook流程控制-when条件判断
1. ansible-playbook添加判断 when相当于shell脚本里的if 判断,when语句就是用来实现这个功能的,它是一个jinja2的语法,但是不需要双大括号,用法很简单 1 ...
- 基础运算符补充,流程控制之if判断/while循环
常量 常量即指不变的量.在python中没有一个专门 的语法代表常量,程序员约定俗成地用变量名全部被大写代表常量. AGE_OF_OLDBOY = 56 基础运算符补充 1.算术运算 加减乘除+ - ...
- 格式化输出的三种方式,运算符及流程控制之if判断
''' 格式化输出的三种方式,运算符及流程控制之if判断 ''' # 格式化输出的三种方式 # 一.占位符 程序中经常会有这样场景:要求用户输入信息,然后打印成固定的格式 比如要求用户输入用户名和年龄 ...
- [基本运算符、流程控制之if判断、与用户交互、深浅拷贝]
[基本运算符.流程控制之if判断.与用户交互] 基本运算符 1.算数运算符 python支持的算术运算符与数学上计算的符号使用是一致的 salary = 3.3 res = salary * 12 p ...
- python 流程控制(条件语句)
1,python流程控制单条件基本语句 2,python流程流程多条件控制语句 3,三元运算 1,python流程控制单条件基本语句 if 判断条件: 执行语句…… else: 执行语句…… 判断条件 ...
- java基础 流程控制和条件语句,循环语句
顺序结构 程序的顺序结构: 如果代码里没有流程控制,程序是按照书写的格式从上而下一行一行执行的, 一条语句执行完之后继续执行下一条语句,中间没有判断和跳转,直到程序的结束. if语句 if语句使用bo ...
- linux shell 流程控制(条件if,循环【for,while】,选择【case】语句实例 --转载
http://www.cnblogs.com/chengmo/archive/2010/10/14/1851434.html nux shell有一套自己的流程控制语句,其中包括条件语句(if),循环 ...
- [转]linux shell 流程控制(条件if,循环【for,while】,选择【case】语句实例
原文链接:http://www.cnblogs.com/chengmo/archive/2010/10/14/1851434.html linux shell有一套自己的流程控制语句,其中包括条件语句 ...
随机推荐
- Blender快捷键设置
Ubuntu16.04 系统快捷键 Alt + RMB 是移动当前窗口的系统快捷键. Blender下,Loop Silection使用的快捷键就是这个Alt + RMB. 如果不能修改系统的设置,就 ...
- 静态布局、自适应布局、流式布局、响应式布局、弹性布局简析、BFC
静态布局:给页面元素设置固定的宽度和高度,单位用px,当窗口缩小,会出现滚动条,拉动滚动条显示被遮挡内容.针对不同分辨率的手机端,分别写不同的样式文件.例如:浏览器窗口是1000px,那么最小的宽度是 ...
- Linux交叉工具链安装
这篇博文http://blog.csdn.net/u010957054/article/details/58056863 提到了一个好的百度网盘,里面有各个版本的交叉工具链. http://www.3 ...
- hdu4289 Control 最大流最小割
You, the head of Department of Security, recently received a top-secret information that a group of ...
- Redis(一)入门
最近,学习了一下,Redis 这个Nosql数据库,从安装到基本语法,作为入门.下面,整理一下基本知识. 参考的地址如下: http://www.runoob.com/redis/redis-java ...
- 【BZOJ2594】【WC2006】水管局长
日……又被傻B错坑了一整天…… 原题: SC省MY市有着庞大的地下水管网络,嘟嘟是MY市的水管局长(就是管水管的啦),嘟嘟作为水管局长的工作就是:每天供水公司可能要将一定量的水从x处送往y处,嘟嘟需要 ...
- Intellij IDEA2017.3永久激活方法
随着idea不断地发展,eclipse的缺点日渐明显,为了能够获得良好的编码体验,越来越多的朋友转向了idea,淘汰了eclipse但是由于近期idea所有私人服务器被封杀了,很多喜欢编码的朋友们都陷 ...
- 深入详解美团点评CAT跨语言服务监控(五)配置与数据库操作
CAT配置 在CAT中,有非常多的配置去指导监控的行为,每个配置都有相应的配置管理类来管理,都有一个配置名, 配置在数据库或者配置文件中都是以xml格式存储,在运行时会被解析到具体实体类存储.我们选取 ...
- create-react-app 搭建的项目中,让 antd 通过侧边栏导航 Menu 的 Menu.Item 控制 Content 部分的变化
第一种:BrowserRouter把Menu和Route组给一起包起来 <Router></Router> 标签要把Menu和Route组给一起包起来 修改src/index. ...
- java 连接 hiveserver2 例子
启动了 hiveserver2 以后才能使用 程序连接 .目前的 使用的 是 server2 版本.和以前的版本驱动包名不同: package hadoop; import java.sql.Co ...