基础语法下

顺序结构
程序从上到下逐行地执行,中间没任何判断和跳转。

分支结构
根据条件,择性地执行某段代码。
if…else和switch-case两种分支语句。

循环结构
根据循环条件,重复性的执行某段代码。
while、do…while、for种循环语句。
注:JDK1.5提供了foreach循环,方便的遍历集合、数组元素。

分支结构:

一 if-else

格式1:

if(条件表达式){
	执行语句;
}

格式2 : 二选一

if(条件表达式){
			执行语句1;
		}else{
			执行语句2;
		}
	

格式3 :多选一

if(条件表达式1){
		执行语句1;
	}else if(条件表达式2){
		执行语句2;
	}else if(条件表达式3){
		执行语句3;
	}
	else{
		执行语句n;
	}

说明:

1.条件表达式的结果为布尔类型
2.在if-else if结构中如果多个条件表达式的关系为互斥关系那么谁上谁下都可以。
如果为包含关系那么范围小的在上面范围大的在下面。
3.在if-else if结构中,else可以省略。那么有可能没有任何一个条件是满足的。

二、switch-cash

格式:

switch(表达式){

case 常量1:
		执行语句;
		break;
case 常量2:
		执行语句2;
		break;
case 常量3:
		执行语句3;
		break;
......

default:
		执行语句n;
		break;

}

说明:
1.case后面的常量会和表达式进行匹配,如果匹配成功则进入执行相应的执行语句。
直到遇到break或者执行到switch-case结构的就会跳出switch-case结构。
如果和case后面的常量都没有匹配成功那么执行default中的执行语句。
2.break可以省略。break作用:用来跳出(终止)switch-case结构。
3.表达式的类型只能是 :byte,short,int,char,枚举,String
4.case后面只能跟常量
5.default的位置是灵活的。当所有case都没有匹配成功时就执行default中的执行语句
6.使用switch-case的,都可以改写为if-else。反之不成立,都可以使用的情况下用switch-case效率高一些

总结:1.在switch中是可以进行穿透的,可以理解成如果第一个语句没有终结,那么会继续到下一个循环体,一直到
最后面或者是遇到break时程序结束。

例子:

int score = 90;
switch(score / 10){
		case 0:
		case 1:
		case 2:
		case 3:
		case 4:
		case 5:
			System.out.println("不合格");
			break;
		case 6:
		case 7:
		case 8:
		case 9:
		case 10:
			System.out.println("合格");
			break;
		}

2…用switch时要注意case的位置和顺序

循环结构

一、for循环

循环的四要素:
1.初始化条件
2.循环条件
3.循环体
4.迭代条件

二 格式:

for(初始化条件; 循环条件 ; 迭代条件){
	
		循环体;

}
for(1; 2 ; 4){	
		3
}
1.初始化条件只执行一次
2.循环条件的结果为布尔类型,如果为true执行循环体,如果为false则跳出for循环结构
3.执行顺序:  1 -> 2 -> 3 -> 4 ->  2 -> 3 -> 4 ......2

三 代码:

//需求 :输出100以内的偶数,统计偶数的个数,求偶数的和。
		int count = 0; //统计偶数的个数
		int sum = 0; //偶数的和
		for(int i = 1; i <= 100; i++){
			//判断当前i的值是否是偶数
			if(i % 2 == 0){
				sum += i;
				count++;
				System.out.println(i);
			}
		}
		System.out.println("count=" + count + " sum=" + sum);

二、while循环

一 循环结构

循环的四要素:
1.初始化条件
2.循环条件
3.循环体
4.迭代条件

二 格式:

初始化条件;
while(循环条件){
	 循环体;
	 迭代条件;
}

注意 :
1.必须有迭代条件否则会发生死循环。
2.for循环和while循环可以相互替换使用

三 代码:

	//
需求 :100以内的偶数,偶数的个数,偶数的总和
		//初始化条件
		int i = 1;
		int count = 0; //统计偶数的个数
		int sum = 0; //偶数的和
		while(i <= 100){//循环条件
			//循环体
			if(i % 2 == 0){
				sum += i;
				count++;
				System.out.println(i);
			}
			i++;	//迭代条件
		}
		System.out.println("count=" + count + " sum=" + sum);	

四 while和for循环的区别?

while的初始化条件在结构外,for循环的初始化条件在结构内(也可以写在结构外)

注意:当while里面的循环条件为true的时候,打印数据的时候是不能一次打印完不换行的,否者不会显示出打印的内容

三、do-while循环
一 循环结构
循环的四要素:
1.初始化条件
2.循环条件
3.循环体
4.迭代条件
二 格式:

初始化条件;

 do{

	 循环体;
	 迭代条件;
 }while(循环条件);

三 代码:

int i = 1;
do{	
	 if(i % 2 == 0){
		System.out.println(i);
	 }
	 i++;
}while(i <= 100);

四 while和do-while的区别?

while的循环体可能一次也不执行,do-while的循环体至少执行一次。

五、死循环

一 格式 :

for(; ; ){}

while(true){}

do{
}while(true);

注意:循环条件最好不要直接写成true。可以使用一个变量。

二 如何终止循环:

1.将循环条件的值变为false
2.使用break关键字用来终止循环

三 代码:

boolean boo = true;

while(boo){

	  boo = false;
}


while(true){
	
	  break;

}

六、嵌套循环
一 嵌套循环 :一个循环a作为另一个循环b的循环体。那么a循环叫作内层循环,b循环叫作外层循环

循环体执行的次数 = 外层循环的次数 * 内层循环的次数

三 说明
可以把外层循环看作行,内层循环看作列。

四 代码

/*
			需求:
					*****
					*****
					*****
					*****
					*****
		*/
		for(int j = 1; j <= 5; j++){ //外层循环控制行
			for(int i = 1; i <= 5; i++){//内层循环控制列
				System.out.print("*");
			}
			System.out.println();
		}

		System.out.println();
		System.out.println("------------------------------------------------");

		/*
			需求:
							 i     j
					*		 1     1
					**		 2	   2
					***		 3	   3
					****	 4	   4
					*****	 5	   5
		*/
		for(int i = 1; i <= 5; i++){
			
			for(int j = 1; j <= i; j++){
				System.out.print("*");
			}

			System.out.println();
		
		}

		System.out.println();
		System.out.println("------------------------------------------------");
		/*
			需求:
								i		j
					*****		1		5
					****		2		4
					***			3		3
					**			4		2
					*			5		1
		*/
		for(int i = 1; i <= 5; i++){
		
			for(int j = 1; j <= 6 - i; j++){
				System.out.print("*");
			}

			System.out.println();
		
		}
		System.out.println();
		System.out.println("------------------------------------------------");
		/*
			需求:
								 i     j	k
					----*		 1     1	4
					---* *		 2	   2	3
					--* * *		 3	   3	2
					-* * * *	 4	   4	1
					* * * * *	 5	   5	0
		*/
		for(int i = 1; i <= 5; i++){
		
			for(int k = 1; k <= 5 - i; k++){ //-
				System.out.print(" ");
			}

			for(int j = 1; j <= i; j++){ //*
				System.out.print("* ");
			}


			System.out.println();
		
		}

总结:注意转换思维,通过画图去解题

七、break和continue

break :
使用范围 : 1.在switch-case中 2.在循环结构中
作用 :1.在switch-case结构中用来跳出switch-case结构 2.在循环结构中用来终止当前循环
,在嵌套循环中 :用来终止包含它的那个循环的当前循环
例子:

for(int i = 1; i <= 3; i++){
			for(int j = 1; j <= 3; j++){
				System.out.println("j==" + j);
				if(j == 2){
					break; //在嵌套循环中用来结束包含它的那层循环的当前循环
				}
			}
			System.out.println("i===" + i);
		}
		System.out.println();

continue
使用范围 :循环结构中
作用 :在循环结构中用来终止当次循环
在嵌套循环中 :用来终止包含它的那个循环的当次循环

for(int i = 1; i <= 3; i++){
			for(int j = 1; j <= 3; j++){
				if(j == 2){
					continue; //在嵌套循环中用来结束包含它的那层循环的当次循环
				}
				System.out.println("j==" + j);
			}
			System.out.println("i===" + i);
		}

如何结束外层循环?
1.给外层循环起个名字 : name : for(; ; ){}
2.break后面跟循环的名字 : break name;

lable : for(int i = 1; i <= 3; i++){
			for(int j = 1; j <= 3; j++){
				System.out.println("j==" + j);
				if(j == 2){
					break lable; 
				}
			}
			System.out.println("i===" + i);
		}
		System.out.println("程序结束");

总结

嵌套循环中:关于break,在内层循环里面,外层循环不结束,如果是break加外层循环的名字的话就可以结束外层循环。在外层里面的话就直接结束外层循环,外层循环结束的话,整个嵌套循环结束。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值