一.分支结构: 1.if语句: if(布尔逻辑表达式)//和C不同,一定是逻辑结果 { 条件为真时执行 } else{ 条件为假时执行 } 2.switch——可用于多值判断//switch支持String类型
switch ( (数字int|枚举Enum|字符|字符串){
case 条件1:{
条件1满足时执行语句1;
break;
}//java换行\回车用%n
case 条件2:{
条件2满足时执行语句2;
break;
}
.....
default:{
条件都不满足时执行语句n;
break;//break意思是跳出整个循环,可以不加
}
二.循环结构 1.while循环: while(循环结束条件){ 循环语句; 修改循环结束判断; }
2.do-while循环:(基本不使用) do{ 循环语句; 修改循环结束判断; }while(循环结束条件); 3.for循环: for(初始化;循环结束条件;后续动作){ 循环体; } 在java中多了一种for循环形式:foreach for(元素类型 变量名 :容量数组) continue 和break 都支持带标签的形式 例如:break found;//一般不用,跳到写found处 三.方法: 3.1方法定义的组成: 1.限定符 public/static 2.返回值类型 ,如果没有,void 3**.方法名称**,首单词小写,之后的首字母大写 4.参数列表 () (参数类型 参数名称) 5.异常声明 throws 异常列表 6.方法体 { }
public static int method (int param1, int param2) throws Exception
3.2 方法重载
重点:
关于方法签名:
方法名称+参数列表 //方法类型可以不同
int sum(int a,int b){} void sum(int a,int b){} //相同方法,重定义
int sum (int a,int b,int c){}
//不同,不是重定义,两个方法
重载:over load:名称相同,参数列表不同
(重要) 不能有两个名字相同、参数类型也相同却返回不同类型值的方法
//通常情况用不到重载,例外:在构造方法中常见
重写:override
3.3递归方法:在java中没有任何特殊性
例如:求前n+1项和:
long sum(int n){
if(n==1){
return 1;}
else
return sum(n-1)+n;
}
思想:归纳法 终止(n=1),递推(n>1)