上一节对于运算符有了大致的了解,这一节针对程序流程控制进行复习!程序流程控制包括顺序结构、判断结构(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. Windows下如何查看当前登录用户

    1.通过whoami命令查看 2.通过username变量查看,具体命令如下:echo %username% 上述两种方法只能查看当前会话用户信息,那么如何看到其他登录用户呢? 可以通过执行query ...

  2. 003 rip

    r0#config t Enter configuration commands, one per line.  End with CNTL/Z. r0(config)#router rip r0(c ...

  3. jQuery無刷新上傳之uploadify簡單試用

    先簡單的侃兩句:貌似已經有兩個月的時間沒有寫過文章了,不過仍會像以前那样每天至少有一至兩個小時是泡在园子裏看各位大神的文章.前些天在研究“ajax無刷新上傳”方面的一些插件,用SWFUpload實現了 ...

  4. Photoshop制作的ico图标方法

    photoshop是打不开ico的.只是能够通过安装插件实现. 插件点击这里能够下载. 用法,解压后的插件文件 粘贴到:  (英文版路径) /program files/adobe/photoshop ...

  5. Cocos2d-X开发中国象棋《四》设计游戏场景

    设计完開始界面后就要设计游戏界面了 为了理清设计思路先看一张游戏界面效果图 游戏界面设计思路: 1.在窗体上放一张桌子 2.在桌子上放一个棋盘 3.在棋盘右边加入新局button,暂不实现详细的功能 ...

  6. 容器ConcurrentHashMap原理(学习)

    一.概述 HashMap 是非线程安全的,在不考虑性能问题的时候,我们的解决方案有 Hashtable 或者Collections.synchronizedMap(hashMap),这两种方式基本都是 ...

  7. matlab采用mex编译多个cpp文件

    最近在看matlab code时,由于本人使用的是64系统,而code中的mex文件时在32位系统上编译的,所以需要重新自己编译maxflowmex.cpp,但是直接mex maxflowmex.cp ...

  8. 通过CSS控制页面中的内容垂直居中的方法

    方法一:通过行高(line-height)定位 line-height通常是用于调节一段文字的行与行之间的距离,或者说两行文字之间的距离,如果行高是500px,那么每一行中的文字距离本行的顶部就是25 ...

  9. 使用IntelliJ IDEA 创建Maven项目(入门)

    一. 下载Maven 下载地址:http://maven.apache.org/download.cgi tar.gz压缩格式用于unix操作系统,而zip用于windows的操作系统,但在windo ...

  10. 栗染-git命令搭建简单的个人的网页

    本来一个很简单的东西被自己搞了很久 可能是对于一个小白来说第一次认识到github的魅力吧,以前只是听别人说过用github搭建网站,听起来很厉害的样子,一直也没有尝试过,突然兴起今天去网上找一些教程 ...