上一节对于运算符有了大致的了解,这一节针对程序流程控制进行复习!程序流程控制包括顺序结构、判断结构(if)、选择结构(switch)、循环结构。

1.判断结构

①if语句的第一种格式:
        if(条件表达式)
        {
            执行语句;
        }

②if语句的第二种格式:

if(条件表达式)
        {
            执行语句;
        }
        else//否则
        {
            执行语句;
        }

注:当if else运算后,有一个具体的结果时,可以简化写成三元运算符。

③if语句第三种格式:
        if(条件表达式)
        {
            执行语句;
        }
        else if (条件表达式)
        {
            执行语句;
        }
        ……
       else
       {
            执行语句;
       }

2.选择结构

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

注:switch特点能选择的数据是有限的,只有byte,short,int,char这四种数据类型可用。switch在选择时先选择第一个有效选择,如果都没成立,再选择default;switch执行结构是遇到大括号或者break时结束,否则一直执行,直到条件成立!

特殊案例:

int x = 2;
        switch(x)//byte,short,int,char.
        {
            default:
                System.out.println("d");
                //break;
            case 4:
                System.out.println("a");
                //break;
            case 1:
                System.out.println("b");
                break;
            case 3:
                System.out.println("c");
                break;
           
        }

输出d a b,原理:执行到default时候没有break,并且default放在最前面,所以会继续向下执行,而不再判断其他答案,将能执行的语句按照顺序结构执行,直到碰到break或者大括号结束,所以输出顺序应该是d a b;

if和switch的应用:

if:
    1,对具体的值进行判断。
    2,对区间判断。
    3,对运算结果是boolean类型的表达式进行判断。

switch:
    1,对具体的值进行判断。
    2,值的个数通常是固定的。
    对于几个固定的值判断,建议使用switch语句,因为switch语句会将具体的答案都加载进内存。
    效率相对高一点。

3.循环结构

①.while方式:

while(条件表达式)
        {
            执行语句;
        }

②.do while 方式:

do
        {
            执行语句;
        }while(条件表达式);

注:do while语句的特点:无论条件是否满足,循环体至少执行一次。

③.for 方式:

for(初始化表达式;循环条件表达式;循环后的操作表达式)
        {
            执行语句;(循环体)
        }

注:for里面的连个表达式运行的顺序,初始化表达式只读一次,判断循环条件为真就执行循环体,然后再执行循环后的操作表达式,接着继续判断循环条件,重复这个过程,直到条件不满足为止。

while与for可以互换,区别在于for为了循环而定义的变量在for循环结束就是在内存中释放,而while循环使用的变量在循环结束后还可以继续使用。

最简单无限循环格式:while(true),for(;;),无限循环存在的原因是并不知道循环多少次,而是根据某些条件,来判断循环。

4.其他的流程控制语句

break(跳出)语句:应用范围:选择结构和循环结构。

continue(继续)语句:应用于循环结构。

注:a,这两个语句离开应用范围,存在是没有意义的。

b,这两个语句单独存在下面都不可以有语句,因为执行不到。

c,continue语句是结束本次循环继续下次循环。

d,标号的出现,可以让这两个语句作用于指定的范围。

例:

标号的举例:

xiaoqiang:for (int x=0; x<3 ;x++ )
      {
             wangcai:for (int y=0; y<4 ; y++)
            {
                   System.out.println("x="+x);
                     break xiaoqiang;
             }
   
       }

Java 基础入门随笔(4) JavaSE版——程序流程控制的更多相关文章

  1. 3、Java基础语法(下):程序流程控制

    程序流程控制 从键盘获取不同类型的变量: 使用Scanner类,具体实现步骤: 1.导包:import java.util.Scanner; 2.Scanner的实例化:Scanner scan = ...

  2. Java 基础入门随笔(2) JavaSE版——关键字、进制转换、类型转换

    1.Java语言-关键字 关键字:被java语言赋予了特殊含义的词,特点是所有的字母都为小写. java涉及到的关键字整理: 用于定义数据类型的关键字 class interface byte sho ...

  3. Java 基础入门随笔(1) JavaSE版——java语言三种技术架构

    1.java语言的三种技术架构: J2SE(java 2 Platform Standard Edition):标准版,是为开发普通桌面和商务应用程序提供的解决方案.该技术体系是其他两者的基础,可以完 ...

  4. Java 基础入门随笔(11) JavaSE版——继承、覆盖、抽象类

    1.面向对象的特征二:继承 定义: 指一个对象直接使用另一对象的属性和方法. 继承好处: 1.提供代码的复用性. 2.让类与类直接产生了关系,给第三个特征多态提供了前提. java中支持单继承.不直接 ...

  5. Java 基础入门随笔(10) JavaSE版——单例设计模式

    设计模式:对问题行之有效的解决方式.其实它是一种思想. 1.单例设计模式. 解决的问题:就是可以保证一个类在内存中的对象唯一性.(单个实例) 使用单例设计模式需求:必须对于多个程序使用同一个配置信息对 ...

  6. Java 基础入门随笔(9) JavaSE版——文档注释

    上节中写了一些static变量以及静态的方法的定义使用以及与非静态的差别,这节补充下: 如果在一个类中所有方法都为静态的,且无成员变量,这时候需要对对应的类进行限制该类无法创建对象,具体操作如下: p ...

  7. Java 基础入门随笔(8) JavaSE版——静态static

    面向对象(2) this:代表对象.代表哪个对象呢?当前对象. 当成员变量和局部变量重名,可以用关键字this来区分. this就是所在函数所属对象的引用.(简单说:哪个对象调用了this所在的函数, ...

  8. Java 基础入门随笔(7) JavaSE版——面向对象定义、特征:封装、构造函数

    面向对象 面向过程:对于面向过程思想,强调的是过程(动作). 面向对象:对于面向对象思想,强调的是对象(实体). 特点: 1,面向对象就是一种常见的思想.符合人们的思考习惯.2,面向对象的出现,将复杂 ...

  9. Java 基础入门随笔(6) JavaSE版——数组操作

    1.数组 概念:同一种类型数据的集合.其实就是数组就是一个容器. 好处:可以自动给数组中的元素从0开始编号,方便操作这些元素. 格式: ①. 元素类型[] 数组名 = new 元素类型[元素个数或数组 ...

随机推荐

  1. 关于android中的单位(dp、sp)

    android让人头疼的适配问题. --------- Android 中的单位大概有这些: 经常使用的dip.sp.有时候用到px. --------- 介绍两个类: TypedValue:有一些单 ...

  2. 使用OpenCV读、操作、写图像并与bash合作对某个文件夹下全部图像进行相似处理

    我门要对某个文件夹下全部图像文件进行统一处理,假设图像的数量过多.那么手动地一张张处理就会显得有些麻烦.本文使用OpenCV和bash来完毕我们指定的任务. 任务 将文件夹A下的全部统一格式的jpg图 ...

  3. Js、Jquery对goTop功能的实现

    本文介绍用原生JS和Jquery分别实现的网页goTopbutton功能,以及在这个过程中碰到的问题. 终于实现的效果类似:http://sc2.163.com/home(注意右下角的top) 代码: ...

  4. MySQL-查询数据(SELECT)

    MySQL SELECT语句 SELECT语句用于从表或视图中获取数据 Select语句组成 Select 之后是逗号分隔列或星号(*)的列表,表示要返回所有列. From 指定要查询数据的表或视图. ...

  5. Broccoli &amp; Babel使用演示样例

    1 创建项目project文件夹:test 2 在test下运行 npm init 按提示填写package.json文件 3 安装broccoli命令行工具broccoli-cli npm inst ...

  6. Tensorflow学习笔记——张量、图、常量、变量(一)

    1 张量和图 TensorFlow是一种采用数据流图(data flow graphs),用于数值计算的开源软件库.其中 Tensor 代表传递的数据为张量(多维数组),Flow 代表使用计算图进行运 ...

  7. 【SCOI 2007】 降雨量

    [题目链接] 点击打开链接 [算法] 线段树 此题细节很多,写程序时要细心! [代码] #include<bits/stdc++.h> using namespace std; #defi ...

  8. Eclipse 配置 Python 环境

    1.将下载好的Pydev4.5.2(http://sourceforge.net/projects/pydev/files/pydev/  里面有很多版本) 文件夹里的两个文件夹(features+p ...

  9. C#自动内存分配

    一.在程序运行时由CLR管理内存分配(Memory Allocation),程序启动时,操作系统会为每一个线程申请一个独立的栈内存,用于存储方法的局部变量.参数和返回值等:CLR会为进程申请一个连续的 ...

  10. java自学-方法

    上节介绍了流程控制语句,一个复杂的业务逻辑会由很多java代码组成,包含许多功能.比如说购物业务,就包含选商品.下单.支付等功能,如果这些功能的代码写到一起,就会显得很臃肿,可读性非常不好.java提 ...