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. Ubuntu下gdb远程调试--warning: Could not load vsyscall page because no executable was specified解决方案

    1. 首先安装gdbserver apt-get install gdbserver 2. 编译-g 程序 gcc -g test_gdb.c -o test_gdb 源码如下: #include & ...

  2. JQuery实现的动态Table(转)

    这个例子做的不错,转载备份. 原文:http://www.cnblogs.com/linjiqin/archive/2013/06/21/3148181.html $("#mytable t ...

  3. Linux应用总结:自动删除n天前日志

    linux是一个很能自动产生文件的系统,日志.邮件.备份等.虽然现在硬盘廉价,我们可以有很多硬盘空间供这些文件浪费,让系统定时清理一些不需要的文件很有一种爽快的事情.不用你去每天惦记着是否需要清理日志 ...

  4. HDU 3364 Lanterns (高斯消元)

    题意:有n个灯和m个开关,每个开关控制数个灯的状态改变,给出k条询问,问使灯的状态变为询问中的状态有多少种发法. 析:同余高斯消元法,模板题,将每个开关控制每个灯列成行列式,最终状态是结果列,同余高斯 ...

  5. Xen入门系列一【使用Xen4CentOS 在 Centos 6 上安装 Xen】

    最近在学习Hadoop,在Win7下用VMware搭了三台虚拟机好不容易装好了Hadoop结果跑个两个单词的wordcount就跑了十分钟,郁闷啊,于是开始寻找效能更好的虚拟化解决方案,然后选定了Xe ...

  6. sql2008来远程访问sql2005数据库服务器

    今天搞了一个下午终于搞定了数据库的远程访问.其基本步骤如下: sql2008的配置: sql server 2008默认是不允许远程连接的,sa帐户默认禁用的,如果想要在本地用SSMS连接远程服务器上 ...

  7. 操作Cookie的一个陷阱服务器端获取不了maxAge或其它属性

    搞了几天终于弄明白了这个问题: 在读取Cookie,然后操作时,除了getName(),getValue()外,不要妄图得到其他信息,如下方法不会得到值的:cookie.getMaxAge();=== ...

  8. 【汉字乱码】IE下GET形式传递汉字。

    js:encodeURI(); php:urlencode(); 举例: 本来打算这样使用 <a href="list.php?plate=辖区动态" charset=&qu ...

  9. hdu4291之矩阵快速幂

    A Short problem Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  10. 【转】如何分析解决Android ANR

    来自: http://blog.csdn.net/tjy1985/article/details/6777346 http://blog.csdn.net/tjy1985/article/detail ...