java程序流程控制

写到这里,才算正式进入编程语言。

之前的都是基础中的基础,用数学方式发打比方来说,就是学习阿拉伯数字和简单的四则运算,现在开始做应用题了

 

程序流程控制分为

1、顺序结构

   程序从上到下逐行执行,中间没有任何判断和跳过。

   就像之前写的那个赋值运算符语句,从第一行开始执行到最后一行,中间没有任何判断,跳过。

 

2、分支结果

   根据条件,选择性的执行代码

   比如if...else和switch..case 两种分支语句

 

3、循环结果(循环中会牵扯到迭代和迭代器,这一块当时没有学好,只会用,不理解到底什么意思,在这里先做一个记录,新手看可以暂时忽略,后面会讲到!)

   根据循环条件,重复性的执行某段代码

   有while、do...while、for三种循环结构

 

jdk1.5以上版本还有foreach循环,遍历集合和数组元素(其实我没用过,我只在页面上用过c:foreach)

 

if-else 语句

第一种模式:if(条件表达式){

   执行代码块;

}

用语文来教你写代码:如果(小明写了作业){

                        那我就去抄他的

                      }

实战案例:

int a = 4;

if(a>3){

System.out.println(a);

}

第二种模式:if(条件表达式){

   执行代码块;

}else{

   执行代码块;

}

加上else意思就是除了第一个if的条件的所有情况都执行else下的代码块

用语文来教你写代码:如果(小明写了作业){

                        那我就去抄他的

                      }否则{

       那我就自己写

     }

实战案例:

int a = 4;

if(a>5){

System.out.println(a);

}else{

System.out.println(a+""+"不大于5");

}

get新技能:‘+’号在输出语句里面可以做连接符,把前后句给练起来输出。使用连接符的时候最好最右都一个空,也就是"",

因为abcd都是有Unicode码的,Unicode码也就是数字,一不小心,你弄个+号就可能会被程序认为是计算题!所以如果你用‘+’号是

想做连接符,不是做加法的时候,最保险的做法就是+号两边都加"",记得是英文双引号哦,这样就不会出错了。这两个是空字符,

不会产生任何空格的

 

第三种:if(条件表达式){

   执行代码块

}else if(条件表达式){

   执行代码块;

}

else 后面还有if的意思就是第一个if条件不对,那就执行第二个if条件

用语文来教你写代码:如果(小明写了作业){

                        那我就去抄他的

                      }否则 如果(小明没有写){

       那我就去督促他写完,然后我再抄他的

     }

实战案例- -:自己想

注意:用if—else语句时,最后都用else结尾!

 

 switch语句

switch(变量){

  case 常量1(值1):

       语句1;

       break;

 

  case 常量2(值2):

       语句2;

       break;

}

先来解释一个陌生的词:break,作用是跳出当前循环。

switch 就像是一道选择题,把所有的选项全部都罗列出来,然后根据提示直接选择你需要的选项就可以了;

但是 switch 是一个分支表达式,是一个条件控制语句。所以当你选择一个选项之后,当前switch语句就已经结束了。

所以,我们在每一个选项的后面都加上一条break,这样你选择任意一个选项之后,当前switch语句结束。


实战:

int a ;

      Scanner input = new Scanner(System.in);

      System.out.println("小明欺骗你了你,你现在有三种选择可以惩罚他\n

                          1,揍他;2,让他跑一千米;3,让他向你道歉");

      a = input. nextInt;

      case 1:

        System.out.println("你狠狠的揍了他一顿");

break;

      case 2:

        System.out.println("小明是个胖子,你累死他了");

        break;

      case 3:

        System.out.println("小明拒绝道歉,并且向你发动了一次鄙视攻击");

break;

 

get新技能;输入语句 Scanner;可以在控制台上输入你要内容,现在起才是交互的开始,开始有点面向对象编程的味道;

很简单的东西:

首先导包:

import.java.util.Scanner; //(这就是为什么大家喜欢用编译器的原因,遇到导包这种事,根本不用自己去写)

Scanner input = new Scanner(System.in);

 int a = input.nextInt();

 String s = input.next();

 

这样就用键盘在控制台上进行和程序的交互操作了。举了一个int的例子和一个String的例子,这是比较有代表性的两个例子吧

String和char输入的时候 只需要调用next即可。String 和char之外的类型要根据自己的类型在next加上类型 比图要输入的是int 那么就是nextInt。

 

 

循环结构

在满足某些条件的情况下,反复执行特定代码的功能。

 

循环语句由四个部分组成

初始化部分   (in_statement)

循环条件部分 (test_exp)

循环体部分   (body_statement)

迭代部分     (alter_statement)

PS:别问我英文啥意思,布吉岛!!!

 

循环语句包括:for,while,do/while

 

for循环结构

格式:①初始化结构,②循环条件,③迭代条件,④循环体

for(①;②;③){

       ④

      }

①初始化表达式,负责完成变量的初始化 eg:int i = 0;声明出一个int类型的变量i,初始化它的值为0; 

②循环条件表达式,值为boolean型的表达式,指定循环条件。意思很简单,不是对就是错。

③迭代条件:循环后操作表达式,负责修整变量,改变循环条件

④循环体就没什么好说的了,就是需要执行的代码部分。

 

执行流程是:1-2-4-3-2-4-3...4-3-2

直到循环条件不满足,退出当前循环

 

实战;

    for(int i = 0;i<=4;i++){

       System.out.println("helle.worad");

    }

 

执行效果:helle.worad 输出五次。

注意:0 也是 1次,不要以为初始化值为0,就只有4次。i<=4,就是0,1,2,3,4 五次!!!!

 

while循环

格式:① 

      while ② {

         ④③

        }


实战:

int i = 0;

      while(i <= 4){

      System.out.println("helle.worad");

      i++;

      }

do while循环

格式:①

      do{

        ④③

      }while(②)


实战:

int i = 0;

      do{

       System.out.println("helle.worad");

       i++;

      }while(i<=4);

 

while和do/while的区别

do/while循环至少会执行一次;while的条件如果不符合一次都不会执行。

 

无限循环

for(;;){}

 

while(true){}

 

一般情况下,在无线循环内部要有程序终止的语句,用break实现。如果没有,那就是死循环。

 

嵌套循环:循环中还可以声明循环,相当于内层循环充当外层循环的循环体。

for(;;){

 for(;;){

 }

}

 

while(){

 for(;;){

 }

}

 

用最简单的方法解释一下:输出一个图形,图形由“*”构成,横竖各五个。

用嵌套循环就可以实现,外层循环控制行数,内层循环控制列数。

      for(int i = 0 ;i<=4;i++){

            for(int j = 0; j<=4; j++){

                System.out.print("*");

            }

            System.out.println();

        }

在这里说一个break的点,break的作用就是跳出当前循环,但是记得break是跳出当前循环,

意思也就是如果是嵌套循环,你在内循环写的break,只是跳出内循环,外循环还会继续。

如果要继续跳出外循环也很简单,在外循环外面再写一个break即可。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值