程序逻辑控制.docx
- 文档编号:27537216
- 上传时间:2023-07-02
- 格式:DOCX
- 页数:14
- 大小:788.81KB
程序逻辑控制.docx
《程序逻辑控制.docx》由会员分享,可在线阅读,更多相关《程序逻辑控制.docx(14页珍藏版)》请在冰豆网上搜索。
程序逻辑控制
1、课程名称:
程序逻辑控制
2、知识点
2.1、上次课程的主要知识点
1、三目运算;
2、逻辑运算。
2.2、本次预计讲解的知识点
1、分支语句;
2、循环语句。
3、具体内容(★★★★★)
程序主要分为三种逻辑:
顺序、分支、循环。
3.1、if分支语句
if分支语句是最为基础的分支操作,但是其有三种使用形式。
if语句:
if...else语句:
if...elseif...elseif...else语句:
if(布尔表达式){
条件满足时执行;
}
if(布尔表达式){
条件满足时执行;
}else{
条件不满足时执行;
}
if(布尔表达式){
条件满足时执行;
}elseif(布尔表达式){
条件满足时执行;
}...[else{
条件都不满足时执行;
}]
范例:
使用if判断
publicclassTestDemo{
publicstaticvoidmain(Stringargs[]){
doublemoney=9.8;
if(money==9.9){
System.out.println("可以购买此DVD(进口的...)");
}
System.out.println("****导致某人身亡......");
}
}
利用if语句只能够判断满足条件时的执行;。
范例:
if...else语句
publicclassTestDemo{
publicstaticvoidmain(Stringargs[]){
doublemoney=9.8;
if(money>=9.9){
System.out.println("可以购买此DVD(进口的...)");
}else{
System.out.println("可以免费浏览国内的各种门...");
}
System.out.println("****导致某人身亡......");
}
}
如果现在要想进行更多的条件判断,那么就使用if...elseif...elseif....语句。
范例:
多个条件判断
publicclassTestDemo{
publicstaticvoidmain(Stringargs[]){
doublescore=89.9;
if(score>=90&&score<=100){
System.out.println("考试成绩优秀。
");
}elseif(score>=80&&score<90){
System.out.println("考试成绩良好。
");
}elseif(score>=60&&score<80){
System.out.println("考试成绩及格。
");
}else{
System.out.println("恭喜你,为学校做贡献了,准备补考吧。
");
}
}//考试成绩良好。
}
在整个开发之中,分支语句使用的是很多的,并且往往可能会结合多个判断条件一起判断。
3.2、switch分支语句(很少会优先考虑)
利用if..else可以实现多条件的验证,而switch只能够进行多数值的判断,而且switch本身支持的判断数据类型:
·标准做法:
int、char;
·JDK1.5支持了枚举;
·JDK1.7支持了字符串。
对于switch语法结构如下:
switch(变量|内容){
case数值:
{
数值满足时执行的语句;
[break;]
}
case数值:
{
数值满足时执行的语句;
[break;]
}
case数值:
{
数值满足时执行的语句;
[break;]
}...
[default:
{
没有数据满足时执行的语句;
}]
}
范例:
观察switch操作
publicclassTestDemo{
publicstaticvoidmain(Stringargs[]){
intch=2;
switch(ch){
case2:
{
System.out.println("传递的内容是2。
");
}
case1:
{
System.out.println("传递的内容是1。
");
}
default:
{
System.out.println("没有满足的判断数据。
");
}
}
}
}
在使用switch语句之中,如果在每一个case之后不加上break。
那么就表示在第一个case满足条件语句之后将一直执行,执行到遇见break或整个switch执行完毕为止。
所以好的习惯一定要在每一个case中使用break。
publicclassTestDemo{
publicstaticvoidmain(Stringargs[]){
intch=1;
switch(ch){
case2:
{
System.out.println("传递的内容是2。
");
break;
}
case1:
{
System.out.println("传递的内容是1。
");
break;
}
default:
{
System.out.println("没有满足的判断数据。
");
break;
}
}
}
}
从JDK1.7开始,switch进行了扩充,支持了字符串的验证。
范例:
判断字符串
publicclassTestDemo{
publicstaticvoidmain(Stringargs[]){
Stringstr="hello";
switch(str){
case"Hello":
{
System.out.println("传递的内容是Hello。
");
break;
}
case"hello":
{
System.out.println("传递的内容是hello。
");
break;
}
default:
{
System.out.println("没有满足的判断数据。
");
break;
}
}
}
}
在进行字符串判断的时候,依然需要考虑到大小写问题。
3.3、循环语句
循环的意义本身非常的好理解,就是让一段代码重复执行。
但是在循环语法之中,实际上定义有两类循环:
while循环、for循环。
3.3.1、while循环语法
while循环中分为两种形式:
while、do...while.
while循环:
do...while循环:
循环初始化条件;
while(判断循环结束条件){
执行循环语句;
修改循环控制;如果不修改出现死循环
}
循环初始化条件;
do{
执行循环语句;
修改循环控制;如果不修改出现死循环
}while(判断循环结束条件);
下面利用循环实现1~100的累加。
范例:
使用while循环实现累加操作
publicclassTestDemo{
publicstaticvoidmain(Stringargs[]){
//希望在循环之中x的内容可以按照1、2、3、4、5、...、100的方式增长
//实际上当x的内容增长到了100的时候那么就表示循环的结束
intx=1;//循环的初始化变量
intsum=0;//保存循环的计算结果
//x=1、x=2、x=3...x=100、x=101(循环退出)
while(x<=100){//判断x的内容是否小于100
sum+=x;//进行数据累加
x++;//修改循环的控制,x自增1
}
System.out.println(sum);
}
}
范例:
使用do...while循环
publicclassTestDemo{
publicstaticvoidmain(Stringargs[]){
//希望在循环之中x的内容可以按照1、2、3、4、5、...、100的方式增长
//实际上当x的内容增长到了100的时候那么就表示循环的结束
intx=1;//循环的初始化变量
intsum=0;//保存循环的计算结果
//x=1、x=2、x=3...x=100、x=101(循环退出)
do{//判断x的内容是否小于100
sum+=x;//进行数据累加
x++;//修改循环的控制,x自增1
}while(x<=100);
System.out.println(sum);
}
}
while与do..while循环的最大区别在于:
while先判断后执行,而do..while先执行一次再判断,如果条件不满足,while执行0次,而do...while执行1次。
以后开发不许用do...while,就记住while。
3.3.2、for循环
for循环的语法要比while循环简化,其形式如下:
for(循环初始化条件;循环结束判断;改变循环条件){
循环语句;
}
范例:
利用for循环实现累加操作
publicclassTestDemo{
publicstaticvoidmain(Stringargs[]){
intsum=0;
for(intx=1;x<=100;x++){
sum+=x;
}
System.out.println(sum);
}
}
但是对于for循环需要注意一下,有人有这种编写习惯。
publicclassTestDemo{
publicstaticvoidmain(Stringargs[]){
intsum=0;
intx=1;
for(;x<=100;){
sum+=x;
x++;
}
System.out.println(sum);
}
}
3.3.3、循环总结
现在给出了while和for两种循环,那么实际开发中用那个呢?
·如果已经明确知道循环次数就使用for循环;
·如果不知道循环次数,但是知道循环结束条件,那么使用while循环。
3.4、循环控制
循环默认情况下肯定要一直执行,直到循环条件满足,但是在循环的执行中提供有两个循环的控制语句:
continue(中断一次)、break(跳出循环)。
范例:
观察continue
publicclassTestDemo{
publicstaticvoidmain(Stringargs[]){
for(intx=0;x<10;x++){
if(x==2){
continue;//此语句之后的循环体代码不执行,而直接结束本次循环
}
System.out.println(x);
}
}
}
范例:
观察break
publicclassTestDemo{
publicstaticvoidmain(Stringargs[]){
for(intx=0;x<10;x++){
if(x==2){
break;//整个循环退出
}
System.out.println(x);
}
}
}
一般这样的两个语句都会结合if语句来一起使用。
4、总结
现阶段不要求大家编写过于复杂的循环操作。
publicclassTestDemo{
publicstaticvoidmain(Stringargs[]){
intline=5;//打印5行。
for(intx=0;x for(inty=x;y System.out.print(""); } for(inty=0;y<=x;y++){ System.out.print("*"); } System.out.println(); } } } 打印九九乘法表 publicclassTestDemo{ publicstaticvoidmain(Stringargs[]){ for(intx=1;x<=9;x++){ for(inty=1;y<=x;y++){ System.out.print(x+"*"+y+"="+(x*y)+"\t"); } System.out.println(); } } }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序逻辑 控制