(1)break
break适用范围:只能用于switch或者是循环语句中。
break作用:
1. break用于switch语句的作用是结束一个switch语句。
2. break用于循环语句中的作用是结束当前所在的循环语句。
笔试题目:break目前位于内层的for循环,如何才能让break作用于外层 的for循环。
可以标记解决
标记的命名只要符合标识符的命名规则即可。
具体程序如下:
class Demo1
{
public static void main(String[] args)
{
aaa:for(int j = 0 ; j<3 ; j++){ // j=0 外层for循环
bbb:for(int i = 0 ; i< 2 ; i++){ // i=0 内层for循环
System.out.println("hello world"); // 1
break aaa;
}
}
}
}
(2) continue
continue关键字
continue的适用范围: continue只能用于循环语句。
continue的作用:continue的作用是跳过本次的循环体内容。继续下一次。
continue要注意的事项:
1. 在一种情况下,continue后面不能跟有其他语句,因为是永远都无法执行到。
2. continue 也可以配合标记使用的。
例子:
class Demo2
{
public static void main(String[] args)
{
/*
for(int i = 0 ; i<5 ; i++){ // i=1 2
if(i==1){
continue;
}
System.out.println("hello "+i);
}
outer:for(int i = 0 ; i<3; i++){ // i= 0; i =1 i=2 3
inner:for(int j = 0 ; j<2 ; j++){ //j=0
System.out.println("hello"); //1 2 3
continue outer;
}
}
需求: 计算1-100的偶数总和.
*/
int sum = 0 ;
for(int num = 1 ; num<=100 ; num++){
if(num%2!=0){
continue; //如果是奇数就跳过本次循环。
}
sum = sum+num;
}
System.out.println("总和:"+ sum);
}
}
(3)return
注意: 如果一个函数的返回值类型是具体的数据类型,那么该函数就必须要保证在任意情况下都保证有返回值。(除了返回值类型是void以外)
return 关键字的作用:
1. 返回数据给函数的调用者。
2. 函数一旦执行到了return关键字,那么该函数马上结束。 (能结束一个函数)
注意:一个函数的返回值类型 是void,那么也可以出现return关键字,但是return关键字的后面不能有数据。
break关键字与return关键字的区别:
1.break关键字是结束一个循环。
2. return关键字是结束一个函数。
下边为具体例子:
class Demo3 {
public static void main(String[] args)
{
// String result = getGrade(10); //调用函数
// System.out.println("对应的等级是:"+ result );
//add(0,2);
print();
}
public static void print(){
for(int i = 0 ; i < 5; i++){
System.out.println("hello world");
///break; //结束了当前的循环
return ; //结束当前的函数
}
System.out.println("哈哈我能执行吗??");
}
//目前该函数的返回值类型是void,那么是否可以存在return关键字呢?
public static void add(int a , int b){
if(a==0){
return; //结束一个函数
}
System.out.println("总和:"+(a+b));
}
public static String getGrade(int score){ //未知的参数定义在形参中, 由函数的调用者确定。
if(score>=90&&score<=100){
return "A等级";
}else if(score>=80&&score<=89){
return "B等级";
}else if(score>=70&&score<=79){
return "C等级";
}else if(score>=60&&score<=69){
return "D等级";
}else if(score>=0&&score<=59){
return "E等级";
}else{
return "补考等级";
}
}
}