循环和方法

一、循环语句

二、控制跳转语句

三、方法概述

一、循环语句

为什么要引入循环?

在我们的学习和工作中,常常有一些东西需要重复去做,而Java也是一样,有许多需要重复执行的语句或代码块,如果全部重写一遍,工作总量就会非常巨大,但是如果有了一种可以重复执行同一代码块的东西,那么我们写代码的工作就变得容易了,那么这个结构就是Java中的循环结构。

  1. for循环

    语句格式:

     for(初始化表达式语句;判断条件语句;控制条件语句) {
             循环体语句;
     }

    执行的流程:

     a:执行初始化表达式语句
     b:执行判断条件语句,看其返回值是true还是false
             如果是true,就继续执行
             如果是false,就结束循环
     c:执行循环体语句;
     d:执行控制条件语句
     e:回到b继续。    

    注意:初始化表达式语句只执行一次。

    例1:在屏幕打印1-10:

     public class Test1 {
         public static void main(String[] args) {
             for (int i = 1; i <= 10 ; i++) {
                 System.out.println(i);
             }
         }
     }

    例2:打印9*9乘法表:

     
    public class Test1 {
         public static void main(String[] args) {
             for (int i = 1; i <10 ; i++) {
                 for (int j=1;j<=i;j++){
                     System.out.print(j+"*"+i+"="+i*j+"\t");
                 }
                 System.out.println();
             }
         }
     }

    运行结果如下:

    例3:使用for语句完成统计思想,计算1-1000的累加和,

     public class Test1 {
         public static void main(String[] args) {
             int sum=0;
             for (int i = 1; i <1000 ; i++) {
                 sum+=i;
             }
             System.out.println(sum);
         }
     }

  2. while语句

    基本格式:

     while(判断条件语句) {
                 循环体语句;
                 控制条件语句;
             }

    执行流程:

     a:执行初始化条件语句;
     b:执行判断条件语句,看其返回值是true还是false
         如果是true,就继续执行
         如果是false,就结束循环
     c:执行循环体语句;
     d:执行控制条件语句
     e:回到b继续。

    例:统计三位的水仙花数一共有多少个,

     public class Test1 {
         public static void main(String[] args) {
             int count=0;
             int i=100;
             int a=0;
             int b=0;
             int c=0;
             while(i<1000){
                 a=i%10;         //取i的个位数字
                 b=i/10%10;      //取i的十位数字
                 c=i/100;        //取i的百位数字
                 if(a*a*a+b*b*b+c*c*c==i){
                     count++;
                 }
                 i++;        //循环控制语句
             }
             System.out.println("三位水仙花数共有"+count+"个。");
         }
     }

  3. do...while语句

    语句格式:

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

    执行流程:

     a:执行初始化条件语句;
     b:执行循环体语句;
     c:执行控制条件语句;
     d:执行判断条件语句,看其返回值是true还是false
             如果是true,就继续执行
             如果是false,就结束循环
     e:回到b继续。

    例:打印1-10

     public class Test2 {
         public static void main(String[] args) {
             int i=1;
             do{
                 System.out.println(i);
                 i++;
             }while(i<=10);
         }
     }

  4. 三种循环语句的区别

    1. do...while语句会最少先执行一次循环体,而for和while语句先判断条件是否成立,才执行循环体。

    2. 如果想在循环结束后,继续使用控制条件的那个变量,用while循环,否则用for循环。不知道用for循环。因为变量及早的从内存中消失,可以提高内存的使用效率。

  5. 死循环

    死循环就是一直不断执行的循环。

    例如:

     while(true){...}
     for(;;){...}

二、控制跳转语句

什么是控制跳转语句?

可以从循环中跳出或者中断循环的语句。例如,Java提供了break,continue和return来实现控制语句的跳转和中断。

三个控制跳转语句的意义

     break 中断
     continue 继续
     return 返回 

使用场景:

 (1)break:在选择结构switch语句中;在循环语句中。可以退出单层循环。
 (2)continue:在循环语句中。跳过一次循环,执行下一步操作。
 (3)return:可以退出一个方法,跳到上层调用的方法。

三、方法概述

什么是方法?

方法就是Java中完成特定功能的代码块。Java中的方法类似于其他语言中的函数。

方法的格式是什么?

 修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2 ....){
         方法体;
         return 返回值;
     }
  1. 方法的调用实例

    例1:写一个方法完成两个整数的求和运算并在main方法中调用它。

     public class Test3 {
         public static void main(String[] args) {
             int a=10;
             int b=20;
             System.out.println(getSum(a, b));
         }
         public static int getSum(int a,int b){
             return a+b;
         }
     }

    例2:写一个可以在屏幕上打印一行6个*的方法,并在main方法中调用三次。

     public class Test3 {
         public static void main(String[] args) {
             for (int i = 0; i <= 3; i++) {
                 printStart();
             }
         }
         public static void printStart(){
             for (int i = 0; i <= 6; i++) {
                 System.out.print("*");
             }
             System.out.println();
         }
     }

  2. 注意事项

     A:  方法不调用不执行
     B:  方法与方法是平级关系,不能嵌套定义
     C:  方法定义的时候参数之间用逗号隔开
     D:  方法调用的时候不用在传递数据类型
     E:  如果方法有明确的返回值,一定要由return带回一个值
  3. 方法的重载

    首先看一个例子:

     class  MyDemo3{
         public static void main(String[] args) {
             double sum1=add(1,2.0);
             int sum2=add(1,2,3);
             int sum3=add(1,2,3,4);
             System.out.println("sum1:"+sum1);
             System.out.println("sum2:"+sum2);
             System.out.println("sum3:"+sum3);
         }
         public static int add(int a,int b){
             return a+b;
         }
         public static double add(int a,double b){
             return a+b;
         }
         public static int add(int a,int b,int c){
             return a+b+c;
         }
         public static int add(int a,int b,int c,int d){
             return a+b+c+d;
         }
     }

    这段程序编译后不会报错,因为在Java中,允许一个类中,定义多个同名方法,只要他们的参数列表(形参个数或形参类型)不一样即可,不拿返回值类型来区分。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值