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条件判断的更多相关文章

  1. Python流程控制-2 条件判断

    条件判断 条件判断是通过一条或多条判断语句的执行结果(True或者False)来决定执行的代码块. 在Python语法中,使用if.elif和else三个关键字来进行条件判断. if语句的一般形式如下 ...

  2. ansible-playbook流程控制-when条件判断

    1. ansible-playbook添加判断     when相当于shell脚本里的if 判断,when语句就是用来实现这个功能的,它是一个jinja2的语法,但是不需要双大括号,用法很简单  1 ...

  3. 基础运算符补充,流程控制之if判断/while循环

    常量 常量即指不变的量.在python中没有一个专门 的语法代表常量,程序员约定俗成地用变量名全部被大写代表常量. AGE_OF_OLDBOY = 56 基础运算符补充 1.算术运算 加减乘除+ - ...

  4. 格式化输出的三种方式,运算符及流程控制之if判断

    ''' 格式化输出的三种方式,运算符及流程控制之if判断 ''' # 格式化输出的三种方式 # 一.占位符 程序中经常会有这样场景:要求用户输入信息,然后打印成固定的格式 比如要求用户输入用户名和年龄 ...

  5. [基本运算符、流程控制之if判断、与用户交互、深浅拷贝]

    [基本运算符.流程控制之if判断.与用户交互] 基本运算符 1.算数运算符 python支持的算术运算符与数学上计算的符号使用是一致的 salary = 3.3 res = salary * 12 p ...

  6. python 流程控制(条件语句)

    1,python流程控制单条件基本语句 2,python流程流程多条件控制语句 3,三元运算 1,python流程控制单条件基本语句 if 判断条件: 执行语句…… else: 执行语句…… 判断条件 ...

  7. java基础 流程控制和条件语句,循环语句

    顺序结构 程序的顺序结构: 如果代码里没有流程控制,程序是按照书写的格式从上而下一行一行执行的, 一条语句执行完之后继续执行下一条语句,中间没有判断和跳转,直到程序的结束. if语句 if语句使用bo ...

  8. linux shell 流程控制(条件if,循环【for,while】,选择【case】语句实例 --转载

    http://www.cnblogs.com/chengmo/archive/2010/10/14/1851434.html nux shell有一套自己的流程控制语句,其中包括条件语句(if),循环 ...

  9. [转]linux shell 流程控制(条件if,循环【for,while】,选择【case】语句实例

    原文链接:http://www.cnblogs.com/chengmo/archive/2010/10/14/1851434.html linux shell有一套自己的流程控制语句,其中包括条件语句 ...

随机推荐

  1. 【带权并查集】【HDOJ】

    http://acm.hdu.edu.cn/showproblem.php?pid=3047 Zjnu Stadium Time Limit: 2000/1000 MS (Java/Others)   ...

  2. hdu2461 Rectangles 线段树--扫描线

    You are developing a software for painting rectangles on the screen. The software supports drawing s ...

  3. ubuntu设置静态ip后不能上网

    加上下面的配置,然后重启 sudo vim /etc/resolvconf/resolv.conf.d/base nameserver 223.5.5.5nameserver 8.8.8.8names ...

  4. java 调用process

    java调用process 有两种实现方法,一是使用Runtime类,二是使用Process类. 我在最近的项目里用的是Runtime类,接下来写下总结. 有图有真相(在网上学来一句话) packag ...

  5. mysql再探

    select子句及其顺序 select from where group by having order by limit 创建表 create table student(id int not nu ...

  6. MySQL Processlist--常见线程状态

    常见SHOW PROCESSLIST返回结果中各种线程状态 ================================================ After createThis occu ...

  7. Cassandra -- Cassandra 3.0版本安装

    ============================================================ 服务器信息 搭建三节点的Cassandra群集: SERVER1: 192.1 ...

  8. Spring定时器corn表达式详解

    1.结构 Spring定时器corn表达式详解 2.各字段的含义 字段 允许值 允许的特殊字符 秒 0~59 - * / 分 0~59 - * / 小时 0~23 - * / 日期 1~31 - * ...

  9. Architecture options to run a workflow engine

    This week a customer called and asked (translated into my own words and shortened): “We do composite ...

  10. 如何让你的 KiCad 在缩放时不眩晕?

    如何让你的 KiCad 在缩放时不眩晕? 使用 KiCAD 第一感觉是打开速度非常快,而且 PCB 拉线也非常快,封装库又多. 但有一个问题,缩放时总给人一种眩晕,原来是因为鼠标自动跑到屏幕中间去了, ...