热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

JAVAday02流程控制语句

程序逻辑结构大致可以分为:1.顺序结构:顺序执行,根据编写的顺序,从上到下运行2.条件分支结构:判断

程序逻辑结构

大致可以分为:


1.顺序结构:

顺序执行,根据编写的顺序,从上到下运行


2.条件分支结构:


  • 判断语句:1. if   2.if...else   3.if...else if...else
  • 选择语句:1.switch

if

代码说明

import java.util.Scanner;
//找出公约数是5的数,再找出公约数是2的数
//当x和y大于2时,求和
public class Deom01 {public static void main(String[] args) {Scanner num1 = new Scanner(System.in);System.out.println("请输入第一个数x");int x = num1.nextInt();Scanner num2 = new Scanner(System.in);System.out.println("请输入第二个数y");int y = num2.nextInt();if(x%5 == 0) {System.out.println("x是5的公约数");}if(y%2 == 0) {System.out.println("y是2的公约数");}if(x > 2 && y > 2) {int sum = x + y;System.out.println("sum = " + sum);}}}

if...else

代码说明

import java.util.Scanner;
//判断年份是不是闰年
//四闰百不闰 四百闰public class Deom02 {public static void main(String[] args) {Scanner year = new Scanner(System.in);System.out.println("请输入一个年份x");int x = year.nextInt();if(0 == x % 4 && 0 != x % 100 || 0 == x % 400) {System.out.println("x是闰年哦");}else {System.out.println("x不是闰年哦");}}}

if...else if...else

代码说明

/** 需求:用户自己输入:商品单价50和商品数量12需求:收银台收款程序输入:实付金额600如果:应付金额>500,打8折输出:找零金额120升级版:判断实付金额够不够*/
import java.util.Scanner;public class Deom03 {public static void main(String[] args) {Scanner num = new Scanner(System.in);System.out.println("请输入商品数量n");int n = num.nextInt();Scanner money = new Scanner(System.in);System.out.println("请输入实付金额m");int m = money.nextInt();if (m 500 ) {double n1 = (n * 50) * 0.8;System.out.println("打8折优惠哦 您需要付款 " + n1);double n2 = m - n1;System.out.println("找您 " + n2);}}}

switch

switch(条件)只适用于判断是否相等,这里面需要判断的条件可以是byte、short、int、char、String类型的条件。

case具有穿透性,在switch语句中,如果case后面不写break,就会出现穿透现象,也就是说不会判断下一个case的值,直接往后运行了,直到又遇见break或者switch整体结束。

代码说明

//输出几天后是星期几
import java.util.Scanner;public class Deom04 {public static void main(String[] args) {Scanner day = new Scanner(System.in);System.out.println("请输入天数d");int d = day.nextInt();int w = d % 7;switch(w) {case 1:System.out.println("今天是周一");break;case 2:System.out.println("今天是周二");break;case 3:System.out.println("今天是周三");break;case 4:System.out.println("今天是周四");break;case 5:System.out.println("今天是周五");break;case 6:System.out.println("今天是周六");break;case 0:System.out.println("今天是周日");break;default:System.out.println("输入的数字有误");break;}}}

3.循环结构:1.for  2.while  3.do...while

for

使用for循环时,他应该是知道规律且知道循环次数才会使用for循环的

代码说明

//打印九九乘法表
/*
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
*/
public class Deom06 {public static void main(String[] args) {for (int x &#61; 1;x <10;x&#43;&#43;) {for(int y &#61; 1;y <&#61; x; y&#43;&#43;) {System.out.print(y &#43; "*"&#43; x &#43; "&#61;" &#43; x*y &#43;"\t");}System.out.println();}}}
//这里涉及到嵌套循环

import java.util.Scanner;
/*有一对兔子&#xff0c;从出生后第3个月起每个月都生一对兔子&#xff0c;小兔子长到第三个月后每个月又生一对兔子&#xff0c;
假如兔子都不死&#xff0c;问每个月的兔子总数为多少&#xff1f;*1: 1
*2: 1
*3: 2
*4: 3
*5: 5dui
*/ public class Test01 {public static void main(String[] args) {int m1 &#61; 1 ;int m2 &#61; 1;int sum ;for (int m3 &#61; 3; m3 <&#61; 12 ;m3&#43;&#43;) {/** 第一个月&#xff1a;1对* 第二个月&#xff1a;1对* 第三个月&#xff1a;2对* 第四个月&#xff1a;3对* 第五个月&#xff1a;5对* m1 &#61; 1 * m2 &#61; 1* m3 &#61; 1&#43;1 ->m2&#43;m1* m4 &#61; 2&#43;1 ->m3&#43;m2* m5 &#61; 3&#43;2 ->m4&#43;m3* */sum &#61; m1 &#43; m2 ;m1 &#61; m2;m2 &#61; sum;System.out.println("兔子现在有 " &#43; sum &#43; "对");}}}

while

当不知道规律&#xff0c;不知道需要循环多少次时使用while循环

代码说明

/** 需求:有猜数字游戏&#xff0c;其游戏规则为&#xff1a;程序内置一个 1 到 1000 之间的数字作为猜测的结果&#xff0c;由用户猜测此数字。用户每猜测一次&#xff0c;由系统提示猜测结果&#xff1a;大了、小了或者猜对了&#xff1b; 直到用户猜对结果&#xff0c;则提示游戏结束。 用户可以提前退出游戏&#xff0c;即&#xff0c;游戏过程中&#xff0c;如果用户录入数字0&#xff0c;则游戏终止。*/
import java.util.Scanner;public class Deom05 {public static void main(String[] args) {Scanner num &#61; new Scanner (System.in);System.out.println("猜数游戏开始啦");int n1 &#61; (int)(Math.random()* 1000) ;int n &#61; 1;while(n !&#61; n1) {System.out.println("请输入你心里想的数字");n &#61; num.nextInt();if(n n1) {System.out.println("数字大了哦");}else {System.out.println("恭喜你猜对啦");break;//结束循环}}num.close();//强制结束System.out.println("游戏结束");}}

do...while

与while循环不一样的是&#xff0c;它先执行一次&#xff08;do&#xff09;&#xff0c;再循环

代码说明

//do while
public class Deom08 {public static void main(String[] args) {int a &#61; 1;do {System.out.println(a);}while(a <2 );int b &#61; 1;while(b <2) {System.out.println(b);b&#43;&#43;;}}}

补充说明

break

continue

死循环&#xff1a;也就是循环中的条件永远为true&#xff0c;死循环的是永不结束的循环。例如&#xff1a;while (true)


{}

嵌套循环&#xff1a;



推荐阅读
  • 主要用了2个类来实现的,话不多说,直接看运行结果,然后在奉上源代码1.Index.javaimportjava.awt.Color;im ... [详细]
  • 本文介绍如何使用Objective-C结合dispatch库进行并发编程,以提高素数计数任务的效率。通过对比纯C代码与引入并发机制后的代码,展示dispatch库的强大功能。 ... [详细]
  • Java 中 Writer flush()方法,示例 ... [详细]
  • 本文介绍了Java并发库中的阻塞队列(BlockingQueue)及其典型应用场景。通过具体实例,展示了如何利用LinkedBlockingQueue实现线程间高效、安全的数据传递,并结合线程池和原子类优化性能。 ... [详细]
  • 本文详细介绍了如何构建一个高效的UI管理系统,集中处理UI页面的打开、关闭、层级管理和页面跳转等问题。通过UIManager统一管理外部切换逻辑,实现功能逻辑分散化和代码复用,支持多人协作开发。 ... [详细]
  • 本文详细介绍了 Apache Jena 库中的 Txn.executeWrite 方法,通过多个实际代码示例展示了其在不同场景下的应用,帮助开发者更好地理解和使用该方法。 ... [详细]
  • 本文详细介绍了Java中org.neo4j.helpers.collection.Iterators.single()方法的功能、使用场景及代码示例,帮助开发者更好地理解和应用该方法。 ... [详细]
  • Explore a common issue encountered when implementing an OAuth 1.0a API, specifically the inability to encode null objects and how to resolve it. ... [详细]
  • 本文介绍了如何使用 Spring Boot DevTools 实现应用程序在开发过程中自动重启。这一特性显著提高了开发效率,特别是在集成开发环境(IDE)中工作时,能够提供快速的反馈循环。默认情况下,DevTools 会监控类路径上的文件变化,并根据需要触发应用重启。 ... [详细]
  • Java 中的 BigDecimal pow()方法,示例 ... [详细]
  • Java 类成员初始化顺序与数组创建
    本文探讨了Java中类成员的初始化顺序、静态引入、可变参数以及finalize方法的应用。通过具体的代码示例,详细解释了这些概念及其在实际编程中的使用。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文介绍如何利用动态规划算法解决经典的0-1背包问题。通过具体实例和代码实现,详细解释了在给定容量的背包中选择若干物品以最大化总价值的过程。 ... [详细]
  • 2023年京东Android面试真题解析与经验分享
    本文由一位拥有6年Android开发经验的工程师撰写,详细解析了京东面试中常见的技术问题。涵盖引用传递、Handler机制、ListView优化、多线程控制及ANR处理等核心知识点。 ... [详细]
  • 本文详细介绍了Java中的访问器(getter)和修改器(setter),探讨了它们在保护数据完整性、增强代码可维护性方面的重要作用。通过具体示例,展示了如何正确使用这些方法来控制类属性的访问和更新。 ... [详细]
author-avatar
多少年都不会变
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有