第三章 流程控制

1.if条件语句
(1)简单的if条件语句语法:

if(条件){语句;
}

注意:a.条件必须最后返回一个布尔值。
(2)嵌套if语句语法:

if(条件1){if(条件2){...}
}

(3)并列if语句语法:

if(条件1){语句1;
}
if(条件2){语句2;
}
...

(4)多重if语句语法:

if(条件1){语句1;
}else if(条件2){语句2;
}else if(条件3){语句3;
}else{语句n;
}

练习1:输入一给值判断是否为闰年。

/* 输入一给值判断是否为闰年*/
import java.util.Scanner;
public class Year{public static void main(String []args){Scanner sc=new Scanner(System.in);System.out.print("请输入一给年份:");int year = sc.nextInt();if((year%4==0&&year%100!=0)||(year%400==0)){System.out.println(year+"是闰年");}elseSystem.out.println(year+"是平年");}
}

运行结果:

练习2:2018年个人所得税计算器。
需求
缴税=全月应纳税所得额*税率-速算扣除数
全月应纳税所得额=(应发工资-五险一金)-5000
实发工资=应发工资-五险一金-缴税

/*创建一个RevenueCounter类
*RevenueCounter:税收计算器
*/
import java.util.Scanner;
public class RevenueCounter{public static void main(String[] args){Scanner sc = new Scanner (System.in);System.out.println("请输入你的工资:");double salary = sc.nextDouble();System.out.println("各项社会保险费:");double salary = sc.nextDouble();double a=salary-charge-5000;   //a为全月应纳税所得额;if(a>0){double pay=0,get=0;      //pay:应缴税款  get:实发工资:if(a<=2910){pay=(a*0.03);System.out.println("使用税率 3%"); }else if(a<=11010){pay=(a*0.1)-210;System.out.println("使用税率 10%");}else if(salary<=21410){pay=(a*0.2)-1410;System.out.println("使用税率 20%");}else if(salary<=28910){pay=(a*0.25)-2660;System.out.println("使用税率 25%");}else if(salary<=42910){pay=(a*0.3)-4410;System.out.println("使用税率 30%");}else if(salary<=59160){pay=(a*0.35)-7160;System.out.println("使用税率 35%");}else if(salary>59160){pay=(a*0.4)-15160;System.out.println("使用税率 40%");}get=salary-charge-pay;System.out.println("应缴税款:"+pay);System.out.println("实发工资:"+get);   }elseSystem.out.println("你无需缴纳个人所得税"); }
}

运行结果
2、switch多分支语句
(1)语法结构

switch(表达式){case 值1:语句;break;case 值2:语句;break;...default:语句;
}

注意事项:
a,不要省掉break
b,值不允许重复
c,值只能是整形或字符型,不能是String (Java高版本支持字符串)
练习:switch…case

import java.util.Scanner;
public class Call{public static void main (String[] args){Scanner sc = new Scanner(System.in);System.out.println("请按号拨打电话:\n\t 按1:拨爸爸的号 \n\t 按2:拨妈妈的号 \n\t 按3:拨爷爷的号 \n\t 按4:拨奶奶的号");String num = sc.next();switch(num){case "1":System.out.println("爸爸号码拨号ing...");break;case "2":System.out.println("妈妈号码拨号ing...");break;case "3":System.out.println("爷爷号码拨号ing...");break;case "4":System.out.println("奶奶号码拨号ing...");break;default:System.out.println("拨号错误!");}}
}

运行结果:

3、循环语句(while/do…while/for)
(1)三种循环语句的语法结构

while(循环条件){                         循环操作;
}
注意:a、循环操作中要有改变循环条件的执行语句,使循环朝着结束的方向走。b、先判断后执行的循环。
--------------------------------------------------------------------------------------------------------
do{循环操作;
}while(循环条件);
注意:a、先执行后判断的循环。b、注意while后的;不要忘记写了。
-----------------------------------------------------------------------------------------------------------
for(初始化循环变量;循环条件;更新循环变量){循环操作;
}
注意:a、for中的;不可以省略。
-------------------------------------------------------------------------------------------------------------

(2)理解三种循环的执行顺序
实现:用三种循环实现1-10自加。

(3)三种循环的死循环

for(;;){if(条件) break;}
-----------------------
while(true){if(条件) break;}
-----------------------
do{if(条件) break;}while(true);

(4)三种循环练习操作。

/*do...while 的是否继续操作;*/
import java.util.Scanner;
public class D-continue{public static void main(String [] args){Scanner sc = new Scanner(System.in);String input;do{System.out.println("你的一些操作");System.out.println("是否继续运行  y/n");input = sc.next();}while(input.equals("y"));System.out.println(”88“);}
}

运行结果;
2.猜字游戏的练习

import java.util.Scanner;
public class GuessNumber{public static void main(String []args){Scanner sc = new Scanner(System.in);System.out.println("欢迎进入猜字游戏");System.out.println("------游戏开始!-----");int right = 36,guess;String input;do{System.out.println("请输入你要猜的数(0~100)");guess = sc.nextInt();if(guess>right){System.out.println("大了!");}else if(guess<right){System.out.println("小了!");}else{System.out.println("恭喜你猜对了!");}do{System.out.println("是否继续?(yes/no)");input = sc.next();}while(!(input.equals("yes")||input.equals("no")));}while(input.equals("yes"));System.out.println("欢迎下次在来");   }
}

运行结果;

for循环来打印九九乘法表;

public class Jiu9{public static void main(String []args){for(int i=1;i<=9;i++){for(int j=1;j<=i;j++){System.out.print(j+"*"+i+"="+(i*j)+"\t");}System.out.println("");}}
}

运行结果;

用for打印各种图形(三角形,矩形等。。。)
4.循环控制语句(break/continue)。
break:用于改变程序控制流。用于中断当前的循环而执行循环后的语句。
使用break跳出循环:

public class BreakTest{public static void main(String []args){for(int i=0;i<=10;i++){if(i==6){                  //如果i=6了则结束循环break;          //跳出循环}System.out.print(i+" ");}System.out.println("---end---");}
}

运行结果:

continue :只能用在循环里。 作用:跳过循环体中剩余的语句而执行下一次循环。

public class ContinueTest{public static void main(String []args){for(int i=0;i<=10;i++){if(i==6){                   //如果i=6了则跳的下一个循环continue;          //跳到下一个循环}System.out.print(i+" ");}System.out.println("---end---");}
}

运行结果:

流程控制小结

  • 顺序结构:语句顺序执行
  • 分支结构:语句在啊满足条件下执行(if,if-else,if-else if-else,switch)
  • 循环结构:语句在满足条件下循环执行多次(while,do—while,for)
  • 跳转语句(break,continue)

Java学习之路 第三章 流程控制相关推荐

  1. 《java学习之路》第一章:初识java第二节:helloworld

    嗨大家好,我是埪动白,前一段时间由于一些原因,java学习之路停更了,我向大家道歉.今天我们来学习下一节 第一章:初识java 第二节:hello world 如果哪位同学没有看第一节,建议先看一下, ...

  2. 移动通信学习之路----第三章

    移动通信第三章 知识点总结 第三章 组网技术基础 1.移动通信网的基本概念 2.无线电干扰 3.区域覆盖 4.信道(频率)的分配方法 5.提高蜂窝系统容量的方法 6.移动性管理 7.越区切换准则 8. ...

  3. JAVA学习之路 (三) 运算符

    运算符 运算符分类 Ø 算术运算符Ø 赋值运算符Ø 比较运算符Ø 逻辑运算符Ø 条件运算符 Java中的算术运算符 ++a a++ Java中的算术运算符 Java中的比较运算符 Java中的逻辑运算 ...

  4. 我的Java学习之路(三)-- 自动饮料售卖机控制台程序

    自动饮料售卖机控制台程序 1. 首先,定义一个饮料抽象类```Drink.java``` 2. 定义一个咖啡类```Coffee.java```,继承饮料类 3. 再定义一个可乐类```Cola.ja ...

  5. 4.Java学习笔记第四节——程序流程控制(尚硅谷视频整理)

    文章目录 一.分支语句 1.       if-else 结构 1)如何从键盘获取不同类型的变量 2.      switch-case 结构 二.循环结构 1.      for 循环 一.分支语句 ...

  6. 【Java基础系列】第3章 流程控制

    3.1 分支结构 3.1.1 if else 语句 if( 逻辑表达式1 ){ 代码1 } //逻辑表达式1成立执行代码1,不成立不执行: 直接跳到下面的代码 if( 逻辑表达式2 ){ 代码2 }e ...

  7. Java学习之路-预科

    Java学习之路-预科 第一章 学习计算机的基本知识 文章目录 Java学习之路-预科 前言 一.什么是计算机? 二.硬件及冯诺依曼结构 1.计算机硬件 1.1 计算机硬件组成 1.2 什么是装机 1 ...

  8. JAVA学习之路--基础篇三

    目录 关于Java中从键盘输入的语句 nextxxx().next().nextLine()的区别 语句 if和if else语句 Switch语句 for语句 while和do..while bre ...

  9. java学习之路目录(已完结)

    java学习之路目录(持续更新中-) 第一阶段 javaSE(完结) 序号 标题 内容 001 java初识 java语言特点.体系结构.运行机制 002 java SE基础语法 注释.关键字.变量. ...

最新文章

  1. 用composer安装laravel-bjyblog
  2. 9.10 css
  3. Xilinx IP核之FIFO
  4. 【详细注释】1058 选择题 (20 分)
  5. ECMAScript5 严格模式,JSON,及其它
  6. POJ2524——宗教(Ubiquitous Religions)【图论,并查集】
  7. java ip输入框_JavaScript实现IP地址的输入框方式
  8. OrderOnline——设计概述
  9. 零基础带你学习MySQL—创建表(四)
  10. 养老金总额和个人账户本息总额啥区别,退休后按照哪个账户计算养老金呢?
  11. 数据结构笔记--线性表定义与实现(Swift)
  12. 数据结构笔记(二十)--二叉树的存储
  13. Riemann映射定理
  14. 每天学一点flash(4) 数组与xml配合使用
  15. 计算机科学与技术学科评估 第五轮,【学科评估】解读第五轮学科各学科评估变化(上)...
  16. 【单片机开发】OV2640在没有DCMI接口的情况下的STM32驱动
  17. ndims matlab,MATLAB的size(),length(),ndims()函数
  18. 汽车驾驶技巧-倒车入库技巧图解-怎样倒车入库
  19. 销售数据分析软件——让你不做糊涂账
  20. html1——标题栏logo、网站logo

热门文章

  1. SSM+医院故障报修系统小程序 毕业设计-附源码191734
  2. 判断两个日期间隔是否为7日内
  3. ubuntu系统中查看本机cpu和内存信息的命令和用法(分色排版)
  4. Python异常和异常处理
  5. 互联网协议学习笔记-----IP协议与传输协议
  6. 字符串左旋和右旋的常见方法
  7. docker-compose(二):SpringBoot + Docker Compose
  8. html向下的三角符号怎么打,哪些字符可用于上/下三角形(无茎的箭头)以HTML显示?...
  9. [转帖]隔行扫描与逐行扫描视频有什么区别
  10. python图像处理(二)绘制函数图像