java基础--笔记4


while(循环的条件表达式)
{
}



do
{
     循环控制的语句;
}
while(循环的条件表达式);

while和do while区别
while先进行条件判断,如果一开始条件就不成立的话,循环所控制的语句一次都不会执行。
do-while先执行一次循环控制的语句,然后去条件判断。



for循环

格式:     for(表达式1 ; 表达式2 ; 表达式3 )
                    {
                         循环控制的语句;
                    }
一盘情况下,表达式1是赋值的表达式(初始化的表达式)
                    表达式2是循环的条件表达式。计算的结果一定是boolean类型的值。
                    表达式3是循环变量的更新。

表达式1-->表达式2  true--> 循环控制的语句 -->表达式3 -->表达式2 true --> 循环控制语句 --> 表达式3 --> 表达式2 false 退出循环

变量的作用范围:
          一般情况下是从定义的地方开始,一直到结束。
          注意:如变量存放在指定的范围内(一般使用大括号来划分),那么这个变量只能在当前这个范围内可以访问和使用,出了这个范围,这个变量无法使用。

练习:

需求:输出1~10之间的所有奇数。
     思路:
          1、1~10到之间的这些数据怎么来? 1 2 3 4 。。。
               发现1~10这些数据有规律的在递增,可以使用循环提供。
          2、使用哪个循环来提供这些数据呢?
               使用for循环来提供这些数据。在循环结束之后,提供数据的这个变量就消失了
          3、对循环提供的每一个数据进行判断。判断每一个数是不是为奇数。
               啥是奇数呢?这个数不能被2整除。就是说明这个数除以2的余数不为0.   m / n   0 ~ n-1

     步骤:
          1、使用for循环提供1~10的这些数据
          2、判断这些数据是否为奇数
          3、是奇数,就输出



*/

class ForTest
{
     public static void main(String[] args)
     {
//          1、使用for循环提供1~10的这些数据
          for( int i=1 ; i<=10 ; i++ )
          {
//               2、判断这些数据是否为奇数
               if( i%2==1 ) //if( i%2!=0 )
               {
//                    3、是奇数,就输出
                    System.out.println("i="+i);
               }
          }

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

          for(int i=1;i<=10;i+=2)
          {
               System.out.println("i="+i);
          }


          System.out.println("Hello World!");
     }
}

while 和 for 的区别

while 循环的循环变量需要定义在循环的外面,然后在循环中使用,在while结束之后这个变量仍然有效,可以继续访问。
for 循环的循环变量一般定义在for的表达式1中,这个变量只能在for循环中使用,当for循环结束后这个变量就失效了,无法再对其访问。
在使用循环时,如果这个变量仅仅是为了控制循环的次数话,那么建议使用for。




循环嵌套

for()   外循环 控制行数
     {
          for()    内循环  控制列数
               {

               }
     }

循环嵌套: (大圈套小圈)
               外循环执行一次,内循环需要从头到尾执行一遍。


需要打印倒三角的时候,值需要改变内循环的初始化值,就可以实现。
当需要打印正三角形的时候,只需要改变内循环的循环条件中的值,就可以实现。

break  关键字
功能:可以终止switch或循环的执行。它需要和循环或者switch进行结合使用。
注意:break不能单独存在。

continue  关键字     只能使用在循环上
功能:停止本次循环,接着进行下次循环。

注意:break能出现switch和循环中,而contiune只能出现在循环中。

练习:


需求:打印如下图形:
          *****
          *****
          *****
          *****
          *****


     分析:
          1、如何打印一行有多个星号。
               可以使用输出语句,每次输出一个星号,输出多次,就可以实现。
          2、使用循环来控制打印的次数。
 通过上面题目的要求练习,发现,外循环控制打印的行数。内循环控制的是打印的次数。

class ForForDemo2
{
     public static void main(String[] args)
     {
          for(int j=1;j<=5;j++)  //控制打印的行数
          {
               for( int i=1;i<=5;i++ )  // 控制每行打印的个数
               {
                    System.out.print("*");
               }
               System.out.println();  // 就为了在打印结束之后换行。
          }

          System.out.println("====================");
          /*
               *****
               ****
               ***
               **
               *
               需要打印倒三角的时候,只需要更改内循环的起始值,就可以控制每行打印的次数。

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


          System.out.println("====================");
          /*
               *
               **
               ***
               ****
               *****

               当需要打印正三角型的时候,只需要改变内循环的循环条件中的值,就可以实现。
         
          */
          //int x = 1;
          for(int j=1;j<=5;j++)
          {
               for( int i=1;i<=j;i++ )
               {
                    System.out.print("*");
               }
               //x++;
               System.out.println();
          }

         
               1*1=1
               1*2=2 2*2=4
               1*3=3 2*3=6 3*3=9
               1*4=4



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

          */   
       }
}

函数(方法)

函数是一段独立的代码,它内部可封装相应的功能。平且这部分代码可以被多次的调用执行。当要调用某一段独立的代码时,这段代码必须有名称,这个名称就是函数名。
在定义一个独立的功能(函数)时,这个函数必须要有名称。这个函数必须要有返回值类型。
当把方法定义好之后,怎么使用?
使用方法名 ();

定义函数
格式:          修饰符     返回值类型     函数名(参数列表) // 函数(方法)签名
                    {
                         集体功能代码;
                    }


在方法调用过程中需要注意: 当实际参数和形式参数同名时,形式参数值得的改变,对实际参数空间中的值没有任何影响。
把这种数据的传递形式称为:值传递。

当调用的方法没有返回值时,返回类型为void,同时在此方法中不能出现带有参数的return语句。

return 关键字   就是将具体的值返回给调用者。return关键字还有第二个功能,就是结束方法。

定义功能,都需要注意那些问题:
1,定义功能时,需要明确这个功能 有没有未知参数参与运算
2,定义功能时,需要明确这个功能 需不需要把结果返回


 需求:
          求两个int类型数的和的功能
     思路:
          1、需要定义一个功能 
               public static  返回值 getSum(  )
               {
                    int a = 3;
                    int b = 4;


               }
          2、由于这个功能算两个数和值的,这两个数是未知。就需要调用这个功能的人给我们传递进来。
               我们的这个功能怎么接受别人传递进来的数据呢?
               我们在定义功能的时候,如果功能需要接受别人传递的参数,
               这时就需要在定义功能的括号中定义变量,来接受这些数据
              
               public static  返回值 getSum( int num , int num2 )  定义在函数开头格式中的参数,是专门用来接受别人传递的值
          3、定功能时,返回值的类型和具体返回的数据类型保持一致。
              public static  int getSum( int num , int num2 )
               {
              
               }
          4、怎么把计算的值返回给调用的人呢?
               当在功能中需要将数据返回给调用者时,需要使用关键字 return + 返回的值。
               public static  int getSum( int num , int num2 )
               {
                    int sum = num + num2;
                    return sum;
               }


方法重载:

在一个类中,有多个重名的方法.这些方法就是以重载的形式出现。方法要在一个类中形成重载,必须保证方法名相同,方法的参数列表不同(主要指的是参数的类型不同,顺序不同,个数不同)。
重载和返回值类型没有任何关系。
重载和参数的名称也无关。

练习:
下面可以与void show(int a,char b,boolean c){}重载的是?   
-------------------------------------------------------------
a.      void show(char b, int a, boolean c){} 可以 参数类型不同
b.      int show(boolean a,char c ,int b){}  可以
c.      void show(int a,char b,double c){}     可以
d.     void show(int x,char y,boolean z){}     不可以 
e.      int show(int x,double y){}     可以  
f.      int show(int x, char y,boolean z){}  不可以

什么时候用重载:当定义的功能相同,但参与运算的未知内容不同。那么,这时就定义一个函数名称以表示其功能,方便阅读,而通过参数列表的不同来区分多个同名函数。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值