Java控制执行流程

Java控制执行流程

简介

Java使用了C的控制流程语句,在Java中,涉及的关键字包括if-else、whlile、do-while、for、return、break、和选择语句switch-case

true和false

所有条件语句都利用表达式来判断真或假来决定执行路径。其中条件表达式的返回值为true(对)、false(假)。true和false均为Java中的Boolean(布尔)类型。注意大小写不能写错。

int a = 1;  
int b = 1;  
System.out.println(a==b); //true

除了基本数据类型中的String类型,不要使用“==”来判断两字符串是否相等,其余均可使用“==”。例如:

String str1 = "abc";  
String str2 = new String("abc");  
System.out.println(str1 == str2); //false

这里涉及到内存的相关知识,以后再做讲解。
注意Java不允许将一个数字作为布尔值使用,在C和C++是允许的(“真”是非零,“假”是零)。

if-else

if-else语句是控制程序流程的最基本形式,其中else是可选的(可有可无),具体看你自己的程序流程安排。有以下三种形式:

if(Boolean-expression){  
    statement  
}  
if(Boolean-expression){  
    statement  
}else{  
	statement  
} 
if(Boolean-expression){  
    statement  
}else if(Boolean-expression){  
	statement  
}else{  
	statement  
}  

案列:

int num1 = 2;  
int num2 = 3;  
int result = 0;  
if(num1 > num2){  
    result = 1;  
}else if(num1 < num2) {  
    result = -1;  
}else {  
	result = 0;  
}  
System.out.println(result); //result = -1  

其中if和else if括号里面的就是布尔表达式必须产生一个布尔结果,其中可以嵌入多个else if进行更多的逻辑判断。但是无论有多少的语句if – else if – else都只会执行一个里面的statement。有else就代表当前面所有的逻辑判断都不满足时就执行else里面的语句,如果有一个满足,则不会执行else里的语句。

循环

while、do-while、for用来控制循环,又被称为迭代语句。语句会重复执行直到起作用的布尔表达式得到“假”结果为止。
while格式如下:

while(Boolean - expression){  
    statement  
}  

案列:

int i = 0;  
while(i < 5){  
    i++;  
}  
System.out.println(i); //i=5  

do-while格式如下:

do{  
    statment  
}while(Boolean - expression)  

while和do-while的唯一区别就是do-while中的语句至少会执行一次,因为它是先执行语句再判断,而while循环是直接判断再执行语句。dhile比do-while更加常用。
for循环是最经常使用的循环,for循环的格式如下:

for(initialization;Booleann - expression;step{  
    statement  
}  

初始化(initialization)表达式、布尔表达式(Boolean - expression)、步进(step)运算都可以为空,每次迭代前会进行布尔判断,循环结束会执行一次步进。在for循环内部定义的变量,只能在for循环内部使用。

for(int i = 0;i<10;i++){  
    System.out.println(i);  //输出0-9
}  

foreach语法

用于遍历数组和容器。尽量遍历数组或者容器时采用foreach语法,阅读起来容易、代码简洁。

int[] array = {3,5,7,9,1};  
for(int ele:array){  
    System.out.println(ele); //3 5 7 9 1  
}  

retrun

return关键词作用:一方面指定一个方法返回的值,另一方面它会导致当前方法的退出并返回那个值。一旦一个方法执行时遇到了return关键字,无论下面还是否有语句还未执行都退出当前方法。

break和continue

break用于退出循环,不执行循环体中的剩余语句。continue则停止当前迭代,然后退回循环起始处,开始下一次迭代。

for (int i = 0; i < 100; i++) {  
    if (i == 74) {// Out of for loop  
	    break;  
    }  
    if (i % 9 != 0) {// Next iteration  
        continue;  
    }  
    System.out.print(i + " ");  
}  
System.out.println();  
int i = 0;  
while (true) {  
    i++;  
	int j = i * 27;  
	if (j == 1269) {// Out of loop  
		break;  
	}  
	if (i % 10 != 0) {// Top of loop  
		continue;  
	}  
	System.out.print(i + " ");  
}  

输出结果:

1.	0 9 18 27 36 45 54 63 72   
2.	10 20 30 40  

其中for(;;)和while(true)是无穷for循环。

switch-case语句

switch(变量){  
case 变量值1:  
	//;  
	break;  
case 变量值2:  
	//...;  
	break;  
	 ...  
case default:  
	//...;  
	break;  
}  

switch语句用的比较少,主要实现多路选择功能。特别注意case里面有一个break,如果没有break;则当执行完当前case里面的语句,又跳到下一case里,直到遇到break关键字。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值