三种逻辑结构

Java中也有三种逻辑结构:
1,顺序结构
2,选择结构
3,循环结构
(一)顺序结构

顺序结构即按照顺序执行:
举例代码如下:

//以下代码按照顺序执行
//计算两个数的和public class Example{public static void main(String[] args){int num1 = 2;int num2 = 4;int sum = num1 + num2;System.out.println("sum = "+sum);}
}

运行结果如下:

(二)分支结构

分支结构即选择结构。
1,if 结构

基本数据类型比较(即表达式值)可以用 bool 类型。
引用数据类型比较(即表达式值) 应该使用 equals。
(字符串和字符串比较不能用 ==,应该用equals)
Java中没有 1,0 表示真假。用bool值表示真假,true为真,false为假。

形式1:

if(布尔表达式){
//条件满足时执行代码   }else{    //条件不满足时执行代码 }

举例如下:

//找出两个数中的最大值public class Example2{public static void main(String[] args){int num1 = 2;int num2 = 4;int max = 0;if(num1 > num2){max = num1;}else{max = num2;}System.out.println("max = "+max);}
}

运行结果如下:

形式2:

if(布尔表达式){//条件满足时执行代码}else if(布尔表达式){ //条件满足时执行代码} ...else{ //条件都不满足时执行代码 }

举例如下:

//以下代码是找出三个数中的最大值public class Example2{public static void main(String[] args){int num1 = 2;int num2 = 4;int num3 = 8;int max = 0;if(num1 > num2){max = num1;}else if(num2 > num3){max = num2;}else{max = num3;}System.out.println("max = "+max);}
}

运行结果如下:

2,switch结构

如果有多个值进行判断,则使用switch结构。
注意:

  • switch后面的常量可以为 数字,枚举,字符,字符串;
    C语言中switch后面的常量只能为 数值(常量,常量表达式都可以) 或字 符。
  • 若多个case对应的值一样,则只写一条语句即可。
  • case命令后最好加 break 或者 continue,就不用继续执行下面的语句。
  • 命令后如果超出一条语句,用大括号括起来最好。

switch结构形式为:

//输入第几天,判断是星期几
//如果输入的数字不在1-7内,则用default判断错误switch(数字|枚举|字符|字符串){case 内容1 : {内容满足时执行语句; [break;] case 内容2 : { 内容满足时执行语句; [break;]  }    ...   default:{ 内容都不满足时执行语句; [break;]}   }

运行结果如下:

举例如下:

//输入数字,判断是 工作日还是休息日
//多个case对应一个执行语句。public class Example2{public static void main(String[] args){int week = 5;switch(week){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 7:System.out.println("今天是星期天");break;}}
}
public class Example2{public static void main(String[] args){int week = 5;switch(week){case 1:case 2:case 3:case 4:case 5:System.out.println("今天是工作日");break;case 6:case 7:System.out.println("今天是休息日");break;}}
}

运行结果如下:

(三)循环结构

循环使用原则:

  1. 对于不知道循环执行次数,但知道循环结束条件的,使用while.
  2. 明确知道循环次数的,使用for2. 明确知道循环次数的,使用for.
    1,while 循环
while(循环结束条件判断){循环语句; 修改循环结束判断;  }

2,do…while循环

do…while语句的特点:最少执行一次。

do{循环语句;  修改循环结束判断;}while(循环结束条件判断);

3,for循环

for(循环初始化;循环结束判断;修改循环结束条件){循环体; }

具体问题实现上述三种循环:
打印1-4之间的自然数
1,使用while 循环

 public class Example2{public static void main(String[] args){int num = 1;while(num <= 4){System.out.print(num+"\t");num ++;}}
}

运行结果如下:

2,使用do … while循环

public class Example2{public static void main(String[] args){int num = 1;do{System.out.print(num+"\t");num++;}while(num <= 4);}
}

运行结果如下:

3,使用for 循环

 public class Example2{public static void main(String[] args){for(int num = 1;num <= 4;num++){System.out.print(num+"\t");}}
}

运行结果如下:

  • 控制循环
    (1)continue
    执行到此语句时会跳过当前循环的剩余部分,返回循环判断。
    (2)break
    直接跳出循环。

    举例如下:
    1,continue控制循环

//找出1-4中不能被2整除的数public class Example2{public static void main(String[] args){int num = 0;for(num = 1;num <= 4;num++){if(num % 2 == 0){continue;}else{System.out.print(num+"\t");}}}
}


2,break控制循环

//在1-4的数中,一旦遇到某个数能被2整除,则退出整个循环public class Example2{public static void main(String[] args){int num = 0;for(num = 1;num <= 4;num++){if(num % 2 == 0){break;}else{System.out.print(num+"\t");}}}
}

JAVA—— 逻辑 结构相关推荐

  1. Java内存结构与垃圾回收机制算法分析

    什么是HotSpot VM 提起HotSpot VM,相信所有Java程序员都知道,它是Sun JDK和OpenJDK中所带的虚拟机,也是目前使用范围最广的Java虚拟机. 但不一定所有人都知道的是, ...

  2. 【Java】命令行下的Java包结构编译与执行

    编写代码 com.hhh.test.PackageTest package com.hhh.test;public class PackageTest {public static void main ...

  3. java 虚拟机 Java内存结构 JVM垃圾回收机制算法

    什么是HotSpot VM 提起HotSpot VM,相信所有Java程序员都知道,它是Sun JDK和OpenJDK中所带的虚拟机,也是目前使用范围最广的Java虚拟机. 但不一定所有人都知道的是, ...

  4. (微信小程序)微信小程序-毕设级项目搭建-微信阅读小程序(内含源码,微信小程序+java逻辑后台+vue管理系统)~不求完美,实现就好

    转载地址:(微信小程序)微信小程序-毕设级项目搭建-微信阅读小程序(内含源码,微信小程序+java逻辑后台+vue管理系统)~不求完美,实现就好 转载请注明出处 作者:Happy王子乐 个人网站(整理 ...

  5. Java内存模型和Java内存结构精读

    以前看过很多遍JVM相关知识的文章,无非都是直接来张图片开搞,一来就甩张图片上来,这是方法区,这是堆,这是线程独享的一堆堆的概念,看得真的是头大,死记硬背也记不下来,更别说理解了. 最近一段时间在看j ...

  6. 【Java千问】你了解Java内存结构么(Java7、8、9内存结构的区别)

    Java内存结构是每个java程序员必须掌握理解的,这是Java的核心基础,对我们编写代码特别是并发编程时有很大帮助.由于Java程序是交由JVM执行的,所以我们在谈Java内存区域划分的时候事实上是 ...

  7. JVM之深入理解JVM内存结构(Java内存结构/Java内存区域)、Java内存模型

    Java作为一种面向对象的,跨平台语言,其对象.内存等一直是比较难的知识点.而且很多概念的名称看起来又那么相似,很多人会傻傻分不清楚.比如本文我们要讨论的JVM内存结构.JAVA内存结构.JAVA内存 ...

  8. JVM学习-Java内存结构(详细易懂)

    Java内存结构 1.JVM概述 2.程序计数器 2.1.定义 2.2.作用及特点解释 3.虚拟机栈 3.1.栈的特点 3.2.栈的演示 3.3.栈的问题辨析 3.4.栈的线程安全问题 3.5.栈内存 ...

  9. 深入理解Java虚拟机:Java运行内存结构

    本篇内容包括:JAVA 运行内存结构,即 程序计数器.Java 虚拟机栈.本地方法栈 .Java堆.方法区.运行时常量池 以及 直接内存等相关内容! 一.JAVA 运行内存结构 Jvm 执行 Java ...

最新文章

  1. pretty_errors_python
  2. 束文圣和黄立南Nature综述极端环境中的微生物多样性
  3. Python学习笔记:入门(2)
  4. 曲苑杂坛--修改数据库名和文件组名
  5. Linux重置Mysql密码_解决MySQL for Linux错误 ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost
  6. import python settings from_Python的Django框架中settings文件的部署建议
  7. 利用iTextSharp填写中文(中日韩)PDF表单(完整解决方案)
  8. erp系统开源_自行构建的开源ERP系统
  9. struts内的action方法自动提交
  10. snmp是什么层协议_率先拥抱TSN——CC-Link发布新一代网络协议CC-Link IE TSN
  11. 最基础的Python的socket编程入门教程
  12. Oracle + PlSql 下载安装配置
  13. 个人虚拟化集群搭建教程
  14. 杂项工具WinHex
  15. Python对word文档进行操作
  16. Linux 文件后面带星号
  17. mysql1062错误 gtid_Mysql基于gtid的主从复制错误:1062
  18. vue控件a-date-picker设置默认值的方式以及注意事项
  19. 海康服务器系统装不上,ivms-4200客户端登入不了云服务器
  20. 2018内推提前批 银联、天猫一面 / 华为业务面+综合面

热门文章

  1. 看完这篇文章,再也不怕 Elasticsearch 索引设计
  2. 【181101】VC++电子地图绘制工具源代码
  3. rancher 启动命令_Rancher 中文文档 —— 快速入门指南
  4. C语言操作SQLite3简明教程
  5. JY62陀螺仪的联调用STM32CubeMX
  6. Unity3D开发工程师
  7. gsoap使用方法及心得
  8. require.js的用法:
  9. php 获取微博cookie,获取新浪微博cookie
  10. 软件测试可以做到多大岁数?