java的控制流程有三种:
一,顺序流程            
   自上而下,按照代码的先后顺序执行
二,分支流程            
   1,if/else语句            
   2,switch/case语句
三,循环流程             
   1,for循环            
           2,while循环             
           3,do while循环
 
先来说说分支流程里的if的用法:if有以下三种方式:

第一种形式:
     if(布尔表达式) {
            //待执行的代码 
     }
 
第二种形式:
     if(布尔表达式) { 
            //待执行的代码 
     } else { 
            //待执行的代码 
     }
 
 第三种形式:
     if(布尔表达式) { 
            //待执行的代码 
     } else if(布尔表达式) { 
            //待执行的代码 
     } else if(布尔表达式) {
            //待执行的代码 
     } else { 
            //待执行的代码 
     }

来三组例子更形象:  int a = 2;

int b = 2;
 
if(a > b) {
System.out.println("星期天在家学习 ");
        }
 
---------------------------------------------------------
 int a = 11;
int b = 3;
if(a > b) {
System.out.println("a > b ");
} else {
System.out.println("a =< b ");
------------------------------------------------------------
int a = 11;
int b = 3;                 if(a > b) {
System.out.println("a > b ");
} else if (a < b) {
System.out.println("a < b ");
} else {
System.out.println("a = b ");
}
---------------------------------------

String pwd = "hellojava";
if(pwd != null && pwd.length() != 6) {
System.out.println("密码长度不正确,请输入6位密码!");
} else {
System.out.println("请稍等,正在验证密码!");

}

-----------------  
 
接下来说说switch/case语句:

switch/case语句的语法结构是: switch(变量a) {     //这里switch变量a的类型是有规定的,可以是byte,short,int,char,enum这五种里的某一种。
case 开关值1: 该开关下执行的语句
case 开关值2: 该开关下执行的语句
case 开关值3: 该开关下执行的语句
case 开关值4: 该开关下执行的语句
......
default: 变量值跟开关值都不符合的情况下后执行

}

实例如下:

int a = 3;
switch(a) {
case 0: System.out.println("a = 0");
case 1: System.out.println("a = 1");
case 2: System.out.println("a = 2");
case 3: System.out.println("a = 3");
default:System.out.println("a = 4");

}

 
最终的运行结果是:a=3 ,
当我们加上break switch的运行过程是:把 a的值与case的开关值比较,若a跟某个开关值相等,就执行该开关下的语句。如果a的值跟所有case开关值都不同,则执行default分支下的语句。 什么时候退出switch语句,取决于何时遇到break语句。要是没有遇到break语句,就继续执行下面的case语句,知道遇到第一个break语句才退出,否则一直运行到switch流程结束。 
 
例子如下:
 int a = 1;
switch(a) {
case 0: System.out.println("a = 0");
case 1: System.out.println("a = 1");
case 2: System.out.println("a = 2");
case 3: System.out.println("a = 3");                        
break; 
default:System.out.println("a = 4");

}

运行结果是:a = 1   a = 2   a = 3 。

因为变量a跟开关1的值相同,所以执行case1语句,一直往下执行case2,case3,遇到break就跳出switch流程,所以a = 1   a = 2   a = 3 。

再来说说循环流程的3种形式:

1. for 循环(使用最多的一种循环)形式为:

for(变量初始化;     条件判断;     步进)  { 
            //待执行的代码

}

for循环执行的流程是:

        1) 执行变量初始化   
        2) 执行条件判断。如果条件判断为假,那么退出for循环,开始执行循环后面的代码;
                                           如果条件判断为真,执行for循环里面的代码。 
        3) 执行步进 
        4) 重复步骤2

例子:求出1-100之间的奇数之和。

int sum = 0;
for(int i = 1; i < 100; i = i +2) {
sum += i;  //等价于sum = sum + i;
}

System.out.println("0-100之间的奇数之和" + sum);
运行结果是:1-100之间的奇数之和2500

2, while 循环形式为: 先判断while里的布尔表达式,为真的话就执行代码;布尔表达式为假,while的循环体就一次也不执行。

while(布尔表达式)  {

//待执行的代码

}

例子:求出0-100之间的整数之和

int a = 1;

int sum = 0;

while(a <= 100) {

sum += a;  //等价于 sum = sum + a;

a++;

}

System.out.println("1-100的整数之和===" + sum);

运行结果是:1-100的整数之和===5050

3.  do…while 循环为: 先执行do里的代码,接着判断while里的布尔表达式,为真的话再接着执行do里的代码,知道遇到while里的布尔表达式为假才跳出。注意while后有个分号

do {

//待执行的代码

}

while();

具体例子如下:求出0-100之间的偶数之和。

int a = 0;

int sum = 0;

do{

sum += a;

a = a + 2;

}

while(a <= 100);

System.out.println("0-100之间的偶数之和 ===" + sum);

最终的运行结果是:0-100之间的偶数之和 ===2550   
         
while与do…while之间的区别:
如果布尔表达式的第一次判断就为false,那么while循环一次也不执行;do…while循环则会执行一次。
如果布尔表达式第一次判断为true,那么while循环与do…while循环是一样的。
例子如下:  
int k = 4;

while(k < 2) {

System.out.println("hello wolrd");

}

do{  System.out.println("welcomt to java");

}

while(k < 2); 运行结果是: welcomt to java

Java SE ---流程控制语句的更多相关文章

  1. java自学-流程控制语句

    一件事情从开始到结束,需要先做什么,再做什么,最后再怎么做,这段过程就是一个流程.程序逻辑处理也是一个流程,java中有专门的流程控制语句,主要分为这几种:顺序,判断,选择,循环. 1.顺序流程  顺 ...

  2. Java学习笔记八:Java的流程控制语句之循环语句

    Java的流程控制语句之循环语句 一:Java循环语句之while: 生活中,有些时候为了完成任务,需要重复的进行某些动作.如参加 10000 米长跑,需要绕 400 米的赛道反复的跑 25 圈.在 ...

  3. Java学习笔记六:Java的流程控制语句之if语句

    Java的流程控制语句之if语句 一:Java条件语句之if: 我们经常需要先做判断,然后才决定是否要做某件事情.例如,如果考试成绩大于 90 分,则奖励一朵小红花 .对于这种“需要先判断条件,条件满 ...

  4. 2017.10.14 Java的流程控制语句switch&&随机点名器

    今日内容介绍 1.流程控制语句switch 2.数组 3.随机点名器案例 ###01switch语句解构     * A:switch语句解构       * a:switch只能针对某个表达式的值作 ...

  5. JAVA基础--流程控制语句02

    JAVA流程控制语句 一.程序流程 定义:只代码执行的先后顺序 种类 顺序流程:程序默认流程,按照书写顺序执行 选择流程:选择语句 判断语句 重复流程: 循环控制语句 二.选择流程控制语句 判断语句 ...

  6. Java基础 - 流程控制语句

    package com.demo4; /* * 流程控制语句 * 流程控制语句分类: * 顺序结构 * 代码从上往下按照顺序执行 * * 选择结构 * if * if (关系表达式1) { * 语句体 ...

  7. Java 程序流程控制语句

    顺序语句 语句:使用分号分隔的代码称作为一个语句 注意:没有写任何代码只是一个分号的时候,也是一条语句,称作空语句 顺序语句就是按照从上往下的顺序执行的语句 Scanner scanner = new ...

  8. Java之流程控制语句

    一.Java条件语句(if...else)    ifelse语法:                                              多重if语法:              ...

  9. Java学习笔记七:Java的流程控制语句之switch

    Java条件语句之 switch 当需要对选项进行等值判断时,使用 switch 语句更加简洁明了.例如:根据考试分数,给予前四名不同的奖品.第一名,奖励笔记本一台:第二名,奖励 IPAD 2 一个: ...

随机推荐

  1. C#应用Newtonsoft.Json操作json[2]-反序列化不定类型

    在读json时,有时不知道对方的数据类型是什么样的,本文用Newtonsoft,把json反序列化为List>,在某种情况下还是有用的. private static List<Dicti ...

  2. GPIO 配置之ODR, BSRR, BRR 详解

    STM32 GPIO 配置之ODR, BSRR, BRR 详解 用stm32 的配置GPIO 来控制LED 显示状态,可用ODR,BSRR,BRR 直接来控制引脚输出状态. ODR寄存器可读可写:既能 ...

  3. 关于PCB 3D 模型的快速导入方法

    altium designer中创建的3D library 只能查看3D效果,并没有其他功能,经测试在原理图编辑界面通过给元件添加 PCB 3D 并不能真正添加3D模型,这样添加根本没有效果(显示不出 ...

  4. LoadRunner执行自动化以及报告自动化的方法

    There are three major articles KB articles on Automating LR: 1. Command line arguments for the LoadR ...

  5. NSString 截取字符串

    NSString字符串常用方法2010-09-06 14:18/******************************************************************** ...

  6. VC、MFC中设置控件的背景色、标题、字体颜色、字体要注意的地方[转]

    在MFC中设置控件的背景色.字体.字体颜色.标题等属性主要是利用OnCtlColor函数来实现. 如: HBRUSH CAlarm::OnCtlColor(CDC* pDC, CWnd* pWnd, ...

  7. nhibernate操作sql2008数据库(添加数据失败)

    今天遇到一错误困了我一天,如此痛恨,遂记录于此: nhibernate框架+MVC模式搭的项目,添加数据时报错: "could not insert: [KXRMallManage.Mode ...

  8. Cache 工具类

    package com.thinkgem.jeesite.common.utils; import net.sf.ehcache.Cache; import net.sf.ehcache.CacheM ...

  9. VPS之openVPN的安装配置

    原文地址:http://www.blogjava.net/dongbule/archive/2010/11/01/336714.html 上次写的<VPS的购买和使用>中提到了openVP ...

  10. sc7731 Android 5.1 LCD驱动简明笔记之三

    此篇笔记基于sc7731 - android 5.1,对lcd的gralloc库做一个简明笔记. 第一部分 调用gralloc.sc8830.so所谓的Gralloc模块,它就是一个模块,一个操作ke ...