java基础——判断与循环控制语句

来源:互联网 发布:手机淘宝 已买到的宝贝 编辑:程序博客网 时间:2024/05/16 15:25

判断与循环控制语句

 

程序的结构

一般来说程序的结构包含有下面三种:

1)顺序结构

2)选择结构

3)循环结构

顺序结构

程序至上而下逐行执行,一条语句执行完之后继续执行下一条语句,一直到程序的末尾。

选择结构

选择结构式根据条件的成立与否,再决定要执行哪些语句的一种结构。

循环结构

循环结构则是根据判断条件的成立与否,决定程序的执行次数,而这个程序段落就称为循环主体。

 

一、判断结构

if语句三种格式:

(1). if(条件表达式)

{

执行语句;

}

………

int x = 2;

if(x>1) //if(条件表达式)

{

System.out.println("yes"); //执行语句;输出打印结果:yes

}

………

 

(2). if(条件表达式)

{

执行语句;

}

else

{

执行语句;

}

………

int x = 1;

if(x>1) //if(条件表达式)

{

System.out.println("yes"); //执行语句;

}

else                    //否则;

{

System.out.println("a"); //执行语句;输出打印结果:a

}

………

(3). if(条件表达式)

{

执行语句;

}

else if (条件表达式)

{

执行语句;

}

……

else

{

执行语句;

}

 

…………

int n = 1;//第三种,执行

if(n>1)

{

System.out.println("a"); //第一种,执行

}

else if(n>2)

{

System.out.println("b"); //第一种,继续执行

}

else if(n>3)

{

System.out.println("c"); //第二种,继续执行

}

else

{

System.out.println("d");

}

System.out.println("over"); //输出打印结果:d   over

…………

 

if语句特点:

a,每一种格式都是单条语句

b,第二种格式三元运算符的区别:三元运算符运算完要有值出现。好处是:可以写在其他表达式中。

c,条件表达式无论写成什么样子,只看最终的结构为是true 或者false;

 

二、 选择结构

switch语句格式

switch(表达式)

{

case 取值1:    //定义被选答案

执行语句;

break;        //跳出switch语句

case 取值2:

执行语句;

break

...

default:         //默认情况

执行语句;

break

}

 

…………

int a=4,b =2;

char ch = '+';

switch(ch)

{

case '-':

System.out.println(a-b);

break;

case '+':

System.out.println(a+b); //输出打印结果:6

break;

case '*':

System.out.println(a*b);

break;

case '/':

System.out.println(a/b);

break;

default:

System.out.println("feifa");

break;

}

…………

在以上的操作中,每个语句后面都会存在一个break,此语句表示退出整个switch()语句,如果不写上此语句,则所有的操作将在第一个满足条件之后全部输出直到遇到break为止。

笔试题:

下面程序执行的结果是?()

int  a=2;

switch(a)

{

case 1:

a+=1;

break;

case 2:

a+=2;//此处没有break语句,不跳出

case 3:

a+=3;

break;

case 4:

a+=4;

break;

default:

a=0;

}

System.out.println(a);

A.  5

B.  6

C.  7//正确答案

D.  8

 

switch语句特点:

a,switch语句选择的类型只有四种:byteshortint char

b,case之间与default没有顺序。先执行第一个case,没有匹配的case执行default

c,结束switch语句的两种情况:遇到break,执行到switch语句结束

d,如果匹配的case或者default没有对应的break那么程序会继续向下执行,运行可以执行的语句,直到遇到break或者switch结尾结束。

 

三、循环结构

代表语句:whiledo whilefor

while语句格式

while(条件表达式)

{

执行语句;

}

do while语句格式

do

{

执行语句;

}while(条件表达式);

do while特点是条件无论是否满足,循环体至少被执行一次。do...while循环是先做再说

 

for语句格式

for(初始化表达式;循环条件表达式;循环后的操作表达式)

{

执行语句;

}

注意:

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

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

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

 

无限循环的最简单表现形式。 while(true){} for(;;){}

什么时候使用循环结构? 当要对某些语句执行很多次时,就使用循环结构

 

四、其他流程控制语句

break(跳出), 

continue(继续)

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

continue语句:应用于循环结构

continue语句格式:

for(赋值初值;判断条件;赋值增减量){

语句1;
                 语句2;

...

continue;

...  //若执行continue语句,则此块内的语句将不会被执行

语句n;

}

...

使用continue就是中断一次循环的执行

示例代码:

public class T {

public static void main(String args[]){

for(int i=0;i< 5;i++){

if(i==2){

continue;

}

System.out.println("i = " + i) ;

}

}

}

输出结果

1. i = 0

2. i = 1

3. i = 3

4. i = 4

注意:

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

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

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

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

 

0 0