1、break、continue
1、break只能用于switch语句和循环语句中,continue只能用于循环语句中;
2、break是终止本层循环,continue是终止本次循环,用于跳过某个循环语句块的一次执行,结束本次循环执行,进入下一次循环;
3、 案例:
1 class TestBreak{ 2 public static void main(String [] args){ 3 for(int i=0;i<=15;i++){ 4 if(i==7){ 5 // continue; 6 break;//break跳出循环情况,终止本层循环 7 } 8 System.out.println("i="+i); 9 10 } 11 System.out.println("Game over!"); 12 } 13 }
结果:
1 class TestBreak{ 2 public static void main(String [] args){ 3 for(int i=0;i<=15;i++){ 4 if(i==7){ 5 continue;//continue跳出循环情况,终止本次循环 6 7 } 8 System.out.println("i="+i); 9 10 } 11 System.out.println("Game over!"); 12 } 13 }
结果:
方法
方法的定义及格式
定义:方法是完成特定功能的代码块{};
1 格式:修饰符 返回类型 方法名(参数类型 参数名1,参数类型 参数名2...){ 2 3 方法体; 4 5 return [返回值](视返回类型而定); 6 7 }
void类型:不返回具体值,可加return,但后不能跟什么东西,此时return可以省略;
参数名是一个变量,用于接收调用方法时传入的参数;
返回值:程序被return带回的结果,返给调用者;
方法不调用,不会自动执行;
方法与方法是平级关系,不能嵌套使用;
方法定义的时候参数用逗号隔开;
方法在调用的时候不用再传递数据类型,只传值,或者变量名即可;
方法定义的位置
方法定义在类体内,不能在方法中定义方法,或者说方法不能嵌套定义;
方法形参和返回值的确定
方法返回值要看具体的方法功能来确定,可以是void,可以是基本数据类型,也不可以是引用数据类型;
形参根据使用的具体变量类型确定;
空返回值的方法调用注意事项
void类型方法由于无返回值,在使用时可以直接调用该方法(单独一句调用语句),但是不能进行赋值或用于结果打印;
有返回值的方法调用的注意事项:
对于有返回值的方法,一定要有return带回一个同类型值、或者可以自动向上转型的返回值、或者是子类型,如下:
1 public static int test(){ 2 3 short s = 12; 4 5 return s; //s虽然是short型,但是可以自动转型成int型 6 7 }
可直接用于变量的赋值或结果打印;
方法重载
含义:在用一个类中,可以存在一个以上的同名方法,只用它们的参数列表不同(参数个数、参数类型)不同即可,与范围类型无关,这就叫方法重载;
特点:与返回值类型无关,只看方法名和参数列表(形参个数、形参类型);
在调用时,虚拟机通过参数类别的不同来区分同名方法。
方法的递归
一个方法体内调用它自己,就称为方法的递归;递归调用必须有个终止值,否则一直递归调用,直到内存溢出(StackOverFlowError).
案例:
1 class Recursive{ 2 public static void main(String [] args){ 3 int rec=Fn(10); 4 System.out.println(rec); 5 } 6 //定义一个递归方法 7 public static int Fn(int a){ 8 if(a==0){ 9 return 1; 10 } 11 else if(a==1){ 12 return 4; 13 } 14 else{ 15 return 2*Fn(a-1)+Fn(a-2); 16 } 17 } 18 }