顺序结构

  • JAVA的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行

  • 顺序结构是最简单的算法结构

  • 语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构。

  • 选择结构

    • 我们很多时候需要去判断一个东西是否可行,然后我们才去执行,这样一个过程在程序中用if语句来表示
  • switch多选择结构

    • 多选择结构还有一个实现方式就是switch case语句
    • switch case语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支
    • switch语句中的变量类型可以是
      • Byte、short、int或者char
      • 从java SE 7开始,switch 支持字符串String类型
      • 同时case标签必须为字符串常量或字面量
  • 反编译

    • JAVA-class(字节码文件)-反编译(IDEA)

循环结构

  • while循环

  • do..while 循环

  • for循环

  • 在JAVA5中引入了一种主要用于数组的增强型for循环

  • while是最基本的循环

    • 只要布尔表达式为true,循环就会一直执行下去
    • 我们大多数情况是会让循环停止下来的,我们需要一个让表达式失效的方式来结束循环
    • 少部分情况需要循环一直执行,比如服务器的请求响应监听等
    • 循环条件一直为true就会造成无限循环【死循环】,我们正常的业务编程中应该尽量避免死循环。会影响程序性能或者造成程序卡斯崩溃
  • do...while循环

    • 对于while语句而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件,也至少执行一次
    • do..while循环和while循环相似 不同的是,do...while循环至少会执行一次
    • While和do-While的区别
      • while先判断后执行,dowhile是先执行后判断
      • Do...while总是保证循环体会被至少执行一次!这是他们的主要差别
  • for循环

    • 虽然所有循环结构都可以用while或者do...while表示,但JAVA提供了另一种语句—for循环,使一些循环结构变得更加简单
    • for循环语句是支持迭代的一种通用结构,是最有效、最灵活的循环结构
    • for循环执行的次数是在执行前就确定的
    • 注意
      • 最先执行初始化步骤。可以生命一种类型,但可初始化一个或多个循环控制变量,也可以是空语句
      • 然后,检测布尔表达式的值。如果为true,循环被执行,如果为false,循环终止,开始执行循环体后面的语句
      • 执行一次循环后,更新循环控制变量(迭代因子控制循环变量的增减)
      • 再次检测布尔表达式。循环执行上面的过程)
  • 增强for循环

    • Java5引入了一种主要用于数组或集合的增强性for循环'
    • 声明语句:声明新的局部变量、该变量的类型必须和数组元素的类型匹配。起作用域限定在循环语句块,其值与此时数组元素的值相等
    • 表达式:表达式是要访问的数组名,或者是返回值为数组的方法
    • Java增强for循环语法格式如下:
for(声明语句 :表达式){
//代码句子
}
  • Break continue

    • break在任何循环语句的主体部分,均可用break控制循环的流程。break用户强行退出循环,不执行的循环中剩余的语句(break语句也在switch语句中使用)
    • continue语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定
    • 区别
    • break在任何循环语句的主体部分,均可用break控制循环的流程
    • break用于强行退出循环,不执行循环中剩余的语句(也在switch语句中使用)
    • continu语句用于在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定

Java两种基础结构的更多相关文章

  1. java两种同步机制的实现 synchronized和reentrantlock

    java两种同步机制的实现 synchronized和reentrantlock 双11加保障过去一周,趁现在有空,写一点硬货,因为在进入阿里之后工作域的原因之前很多java知识点很少用,所以记录一下 ...

  2. JAVA学习篇--JAVA两种编程模式控制

    在Drp项目中,解说了两种编程模式Model 1和Model2.以下是对这两种模式的简单理解.以及因为Model2是基于MVC架构的模式,就将我们易混淆的MVC与我们之前学的三层架构进行对照学习一下. ...

  3. java两种动态代理方式的理解

    要理解动态代理,不妨先来看看一个静态代理的例子. 一.静态代理 以一个电商项目的例子来说明问题,比如我定义了一个订单的接口IOrder,其中有一个方法时delivery,代码如下. package c ...

  4. java两种反射的区别 - Class.forName()和ClassLoader.loadClass()

    在理解这两种反射机制之前,需要弄清楚java类的加载机制. 装载:通过类的全限定名获取二进制字节流(二进制的class文件),将二进制字节流转换成方法区中的运行时数据结构,在内存中生成Java.lan ...

  5. Java两种方式简单实现:爬取网页并且保存

    注:如果代码中有冗余,错误或者不规范,欢迎指正. Java简单实现:爬取网页并且保存 对于网络,我一直处于好奇的态度.以前一直想着写个爬虫,但是一拖再拖,懒得实现,感觉这是一个很麻烦的事情,出现个小错 ...

  6. 再谈java两种变量(基本类型和引用类型)(综合各路大神)

    基本类型: 基本类型自然不用说了,它的值就是一个数字,一个字符或一个布尔值. int  a:   a=250: //声明变量a的同时,系统给a分配了数据空间. 引用类型: 是一个对象类型,值是什么呢? ...

  7. 浅谈Java两种并发类型——计算密集型与IO密集型

    转载:https://blog.csdn.net/u013070853/article/details/49304099 核心是可以分别独立运行程序指令的计算单元.线程是操作系统能够进行运算调度的最小 ...

  8. java 两种进程创建方式比较

    A extends Thread: 简单 不能再继承其他类了(Java单继承) 同份资源不共享 A implements Runnable:(推荐) 多个线程共享一个目标资源,适合多线程处理同一份资源 ...

  9. 力扣算法经典第一题——两数之和(Java两种方式实现)

    一.题目 难度:简单 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数, 并返回它们的数组下标. 你可以假设每种输入只会对应一 ...

随机推荐

  1. leaflet antvPath示例

    参考:https://www.cnblogs.com/vichang/p/9438870.html leaflet-antvPath官网:https://github.com/rubenspgcava ...

  2. springboot 2.0 整合 RestTemplate

    首先导入springboot 的 web 包 <dependency> <groupId>org.springframework.boot</groupId> &l ...

  3. UWP 动画之路径

    xml --------------------------------------------- <Page x:Class="MyApp.MainPage" xmlns= ...

  4. 在Java泛型

    1,泛型的定义以及存在意义 泛型,即"参数化类型".就是将类型由原来的具体的类型参数化,类似于方法中的变量参数,此时类型也定义成参数形式(可以称之为类型形参),然后在使用/调用时传 ...

  5. linux 常用命令(四)——(centos7-centos6.8)Vim安装

    centos是默认安装了vi编辑器的,vim编辑器是没安装或者未完全安装的,个人习惯用vim,所以记录一下vim编辑器的安装: 1.查看vim相关软件信息: yum search vim 2.在线安装 ...

  6. Servlet的特点及运行过程

  7. Django的form组件——正则校验

    from django.contrib import admin from django.urls import path from app01 import views urlpatterns = ...

  8. IS(上升子序列)

    前言:   这是一篇杂题选讲+作者口胡的博客,不喜勿喷. 正文:   提示:在阅读时请留意加粗的字体是"极长"还是"最长".   今天改题时碰到了一道关于线段树 ...

  9. MySQL-技术专题-MySQL主从架构以及[半同步机制]模式大全

    MySQL的主从复制 一般在大规模的项目上,都是使用MySQL的复制功能来创建MySQL的主从集群的. 主要是可以通过为数据库服务器配置一个或多个备库的方式来进行数据同步. 复制的功能不仅有利于构建高 ...

  10. 集合遍历数组三种常用方式(Collecton和Map)

    Collection集合遍历数组的三种方式: 迭代器 foreach(增强for循环) JDK1.8之后的新技术Lambda 迭代器: 方法:public Iterator inerator():获取 ...