java语言基础2

选择结构switch语句的格式及其解释

swich语句格式:
switch(表达式){
case 值1:
语句体1;
break;
case值2:
语句体2;
break;
case3:……

default:
	语句体n + 1;
	break;
}

格式解释:
Switch:表示这是switch选择结构;
表达式:这个地方的取值是有限定的
short,byte,int,char
JDK5以后可以是枚举;
JDK7以后可以是字符串;
case:后面跟的是要和表达式进行比较的值;
语句体:要执行的代码
break:表示中断,结束的意思,可以控制switch语句的结束。
default:当所有的值和表达式都不匹配的时候,就执行default控制语句。其实他就
相当于if语句的else。

选择结构switch语句的注意事项

注意事项:
case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的;
case后面的值不能出现相同的;

default可以省略吗?
可以省略,但是不建议。除非判断的值是固定的。

break可以省略吗?
可以省略,一般不建议。除非结构可能不是你想要的。

default的位置一定要在最后吗?
可以出现在switch的任意位置。

switch语句的结束条件
遇到break;
执行到程序的末尾。

选择结switch和if语句的各自使用场景

if语句使用场景:
针对结果是Boolean类型的判断;
针对一个范围的判断;
针对几个常量值的判断;
switch语句使用场景
针对几个常量值的判断;

循环结构循环语句概述

循环语句可以在满足循环条件的情况下,反复执行某段代码,这段被重复执行的代码
被成为循环体语句,当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为
false,从而结束循环,否则循环将一直执行下去,形成死循环。

循环语句的组成:
初始化语句:
判断条件语句:是一个Boolean类型
循环体语句:多次做的事情
控制条件语句:判断变量,使得在合适的时候停止。

for循环语句的格式和基本使用

for循环语句格式:

for(初始化语句;1.判断条件语句;3.控制条件语句){
2.循环体语句;
}

执行流程:
1.执行初始化语句;
2.执行判断条件语句,看其结果时true还是false;
	如果是fales,循环结束
	如果是true,继续执行
3.执行循环体语句
4.执行控制条件语句;
5.回到B继续;

初始化语句就是int x = 1;
判断语句就是Boolean类型;例如 x <=10;
控制条件语句就是 x++;
循环体语句就是System.out…

循环结构for语句

输出1-10;
for(int x = 1; x<=10; x++){
语句体(x);
}
for(int x = 0; x< 10; x++){
执行语句体(x+1);

//定义的变量x只在大括号范围内有效;
格式如果等于1时x小于等于10,但是如果初始化语句为x等于0,x就必须小于1,语句体执行时(x+1);

循环结构for语句2

求1-10的加法;
分析:
0+1=1;
1+2=3;
3+3=6;
6+4=10;
10+5=15;

由此可见我们要定义两个变量:
一个变量用于存储第一个加数,第一个加数其实保存的时以前的所以数据和。默认初始值
应该是0;
一个变量用于存储第二个加数,第二个加数其实就是每次的而数据变化的值。

循环for语句的联系乘阶

什么是阶乘?
n! = n*(n - 1)!规则 !(阶乘)
n! = n*(n -1)(n - 2)321
亦即n!=1×2×3×…×n。阶乘亦可以递归方式定义:0!=1,n!=(n-1)!×n。
列如5的阶乘为1
234*5

for循环语句水仙花数练习

//需求:
分析:
所谓的水仙花数是指一个三位数,其各位数字的立方和等于该数本身。
举例:153就是一个水仙花数
153 = 111 + 555 + 333

A:三位数其实是告诉我们了范围
B:通过for循环我们就可以实现获取每一个三位数。
但是麻烦是如何获取这个三位数的个,十,百位上的数据。
我们如何获取一个数据的个,十,百呢?
	假设有一个数据:153
	ge:153%10=3;
	shi:153/10%10=5;
	bai:153/10/10%10=1;
C:让ge*ge*ge + shi*shi*shi+bai*bai*bai和该数据比较,如果相同,就把该数据在控制台输出。

while循环语句

while循环语句格式:
基本格式
while(判断条件语句){
循环体语句;
}

扩展格式
初始化语句;
while(判断条件语句){
	循环体语句;
	控制条件语句;
}

通过这个格式,我们可以发现其实while跟for循环差不多的;

for(初始化语句;判断语句;控制条件语句){
语句体;
}

循环while语句和for循环语句的区别

while循环和for循环的区别?
使用区别:如果你想在循环结束后,继续使用控制条件的哪个变量,用
while循环,否则使用for循环。不知到用for循环。
因为变量及早的从内存中消失,可以提高内存的使用效率;

其实还有一种场景的理解:
	如果是一个范围的用for循环非常明确;
	如果是不明确要做多少次,用while循环较合适。
// An highlighted block
for(int i =0; i<=10; i++){
	System.out.println();
}
// An highlighted block
int x = 0;
while(x <=10){
	System.out.println();
	x++;
}

循环结构du…while语句的格式和基本使用

do…while循环的基本格式:
do{
循环体语句;
}while(判断条件语句);

扩展格式:
初始化语句;
do{
循环体语句;
控制条件语句;
}while(判断条件语句);

do…while循环至少执行一次循环体;
而for,while循环必须先判断条件是否成立,然后决定是否执行循环体语句。

每次使用循环优先考虑for,其次while,最后才是do…while循环。

循环结构之死循环

注意死循环;
a:一定要注意控制条件语句(++);
b:两种最简单的死循环格式;

(第一种)

// An highlighted block
//死循环:
public static void main(String[] args){
	int x = 0;
	while(x < 10){
	System.out.println(x);
	x++;(没有x++会陷入死循环)

}
(第二种)

// An highlighted block
while(true){
		System.out.println("");
	}

(第三种)

// An highlighted block
//第二种利用for循环执行死循环;
	for(;;){
	System.out.println("")
}
}```
	
# 循环结构嵌套式输出四行五列的星星
System.out.print();这个是不换行的;
我们可以通过println();里面什么也不写进行换行;
循环嵌套:就是循环语句的循环体本身是一个循环体语句。
通过结果我们知道这样一个结论:
	(外循环控制行数;
	   内循环控制列数;)

	外表示行,内表示列;

循环嵌套式:
```javascript
// An highlighted block
for(int y = 0; y<4; y++){
	//(要循环的语句体;)
	for(int x = 0; x <5; x++){
	System.out.print("*");
	}
System.out.println();
}

#跳转语句和break语句;
控制跳转语句:
break:中断
continue:继续
return:返回
在switch或者loop外部中断;
使用场景:
switch语句种
循环语句中(循环语句中加入了if判断的情况)
注意:离开上面的两个场景,无意义;
如果使用:
a:跳出单层语句;
b:跳出多层语句;
想要实现这个效果,就必须知道一个东西。带标签的语句。
格式:
标签名:语句;

控制跳转语句continue语句

continue:继续;
使用场景:
循环中。离开此场景无意义。
break:跳出单层多层循环;
continue:跳出一次循环,进入下一次的执行;

控制跳转语句return语句

break,continue只是针对语句循环
return是针对方法。

总结

1.switch语句
格式:
Switch(表达式){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
case 值3:
语句体3;
break;
default:
语句体n+1;
break;
}

格式解释说明:
	switch:说明这是switch语句。
	表达式:可以是byte,short,int,char
		JDK5以后可以是枚举;
		JDK7以后可以是字符串;
case:后面的值就是要和表达式进行比较的值
break:表示程序到这里中断,跳出switch语句
default:如果所以的情况都不匹配就执行default;

面试题
switch语句可以是byte吗?可以是long吗?可以是String吗?
可以 不可以 JDK7以后可以
注意事项:
case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的
default可以省略吗?
可以但是不建议,因为它的作用是对不正确的情况给出提示。
特殊情况:
case就可以把值固定;
default一定要在最后。
2.循环语句
有三种循环:for,while,do…while;
for循环语句
格式:
for(初始化语句;判断语句;控制条件语句){
循环体语句;
}

1.执行流程:
2.执行初始化语句
3.执行判断条件语句:
	如果是true,就继续;
	如果是false就结束循环;
4.执行循环体语句
5.执行控制条件语句
6.回到2

	注意事项:
判断条件语句无论简单还是复杂,结果是Boolean类型;
循环体语句如果是一条,可以省略大括号但是不建议
有分号就没有左大括号,有左大括号就没有分号;


while循环
	格式
	while(判断条件语句){
		循环体语句;
}


	扩展格式;
	初始化语句;
	while(判断条件语句){
		循环体语句;
		控制条件语句;
}



for和while的区别
1.使用上的区别
	for语句的那个控制条件变量,在循环结束后不能在使用了。
	而while的可以继续使用。
2.理解上的区别
	for适合于一个范围的判断;
	while适合次数不明确的;
		举例:吃葡萄,存钱;



do...while循环
	基本格式
	do{
	循环体语句;
	}while(判断条件语句);


	扩展格式
	初始化语句;
	do{
	循环体语句;
	控制条件语句;
	}while(判断条件语句);


	通过查看格式,我们就可以看出其实三种循环的格式可以是统一的;
	三种循环的区别;
	do..while循环至少执行一次循环体;
	for和while必须先判断条件是否是true,然后才能能决定是否执行循环;

循环使用的注意事项(死循环)
1.一定要注意修改控制条件,否则容易出现死循环。
2。最简单的死循环格式
	a:while(ture){...}
	b:for(;;){}

3.控制跳转语句

(1)break:中断的意思
A:用在循环和switch语句中,离开此应用场景无意义。
B:作用
	a:跳出单层循环;
	b:跳出多层循环,需要标签语句的配合;
(2)continue:继续
A:用在循环中,离开此应用场景无意义。
B:作用
	a:跳出单层循环的一次,可以继续下次

填空
	for(int x = 1; x<=10; x++){
		if(x %3==0){
		补齐代码
		}
	System.out.println("Java基础班");
	}
	如何在控制台输出两次:Java基础班;break'
	如何在控制台输出两次:Java基础班;continue;
	如何在控制台输出两次:Java基础班;System.out.println("Java基础班");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值