一.分支结构: 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)