程序结构与逻辑控制
Java分支结构
分支结构:进行逻辑判断,当满足某些条件时才会执行某些语句
if语句
if语句共有两种形式
if(布尔表达式){
//条件满足时执行的代码
}else{
//条件不满足时执行的代码
}
if(布尔表达式){
//条件满足时执行的代码
}else if(布尔表达式){
//条件满足时执行的代码
}...else{
//条件都不满足时执行的代码
}
使用if、else可以实现对条件的判断,但是在进行多值判断时采用switch语句
switch语句
switch(数字||枚举||字符||字符串){
case 内容1:{
内容满足时执行的代码;
break;
}
case 内容2:{
内容满足时执行的代码;
break;
}
...
default : {
内容都不满足时执行的代码;
break;
}
}
switch语句,如果当前case后没有break,则执行下一个case,直到遇到break或程序结束
循环结构
循环结构:某几行代码被重复执行
while语句
while{结束条件){}
do while语句
do {
// }while(结束条件);
while和do while的区别:当条件不满足时,while一次也不执行,而do while至少执行一次
for语句
for(初始化语句1;结束条件2;条件的更新3) {
// 循环体内容4
}
1-2-4-3
for-each语句
for-each循环:用于数组与类集的输出,对于原集合的修改依然采用for循环。
for(数据类型 临时变量名称 : 数组名称)
{ }
continue;(跳出本次循环,进入下一次循环)
break;(结束本轮循环)
1.对于不知道循环次数,但知道结束条件时,用while
2.知道循环次数用for
方法的定义和使用
方法的定义
方法的声明
public static 方法返回值 方法名称([参数类型 变量]...) {
方法体代码;
[return 返回值];
}
public class Test{
public static void main(String[] args) {
myPrint(1);
myPrint(2);
}
public static void myPrint(int n){
if(n==2){
return; //方法结束调用
}else{
System.out.println(n);
}
}
}
当方法以void声明时,表示此方法无返回值。若有返回值,返回值类型可以是基本数据类型和引用类型。但是void方法仍然可以使用return;表示结束方法调用。
方法重载
定义:方法名称相同,参数的类型、顺序或个数不同,与返回值无关!
不能有两个方法名称相同、参数类型也相同,返回值不同的方法
方法递归
定义:自己调用自己的方法
递归的特点
1.递归的结束条件
2.递归公式
public class Test {
public static void main(String[] args){
System.out.println(sum(100);
}
public static int sum (int n) {
if(num==1){
retun 1;
}else{
return n+sum(n-1);
}
}
}