HAIHAIHEI 发表于 2022-3-23 23:53

Java学习第九天

本帖最后由 HAIHAIHEI 于 2022-3-24 11:28 编辑

第九天,有不对之处麻烦各位指正
循环语句:
包括:for循环,while循环,do......while循环
在有代码需要重复执行的时候,使用循环语句来减少代码量


if循环:/*for语法以及运行原理
语法机制:
for(初始表达式;条件表达式;更新表达式){
循环体;//循环体由Java语句构成
Java语句;
Java语句;
Java语句;
Java语句;
......
}
注意:1.初始化表达式最先执行,并且在整个循环中只执行一次。
          2.条件表达式的结果必须是一个布尔类型,也就是:true或者false
执行原理:
先执行初始化表达式,并且初始化表达式只执行一次。然后判断条件表达式的结果,如果条件表达式的结果是true则执行循环体
循环体结束后,执行更新表达式。更新完之后再判断条件表达式的结果。如果还是true,继续执行循环体。
直到更新表达式执行结束后,再次判断条件,条件为false,for循环终止。
更新表达式的作用:控制循环的次数,更新表达式会更新某个变量的值,这样条件表达式的结果才有可能从true变成false,从而终止for循环的执行如果缺失更新表达式,很有可能会导致死循环。
*/
public class test
{
      public static void main(String[] args){
      //最简单的for循环:
      //初始表达式,条件表达式,更新表达式都不是必须的
       // for(;;){
      //System.out.println("52破解");//ctrl+c可以终止执行
      //}//因为没有设置终止,所以会一直循环下去,为了下面代码可以正常执行,所以设为注释了
      //最常见的for循环
      //循环十次,输出0~9
      for ( int i = 0 ;i < 10 ; i++ ){
      System.out.println("i="+i);
      }
      //对于以上for循环,其中int i = 0最先执行,并且只执行一次,而且i变量属于for循环的局部变量,for循环结束后i的内存就释放了
      //i变量只能在for循环中使用,属于for循环域,在main方法中没有办法直接使用

      int i = 0;
      //这样i变量的作用域就扩大了
      for(;i < 10;i++){
      System.out.println("i---->"+i);//0 1 2 3 4....9
      }
      System.out.println("i---->"+i);//10
      //变形
      for(int k = 1;k <=10;k++){
      System.out.println("k---->"+k);//1 2 3....9
      }
      //变形2
      for(int k = 1;k <=10;){
      System.out.println("k---->"+k);
      k++;
      }
      //变形3
      for(int k = 1;k <=10;){
      k++;
      System.out.println("k---->"+k);//2 3 4 5.....11
      }
      //变形4
      for(int k = 10;k > 0;k--){
      System.out.println("k ="+k);//10 9 8 7....1
      }
      //变形5
      for(int k =0;k<10;k+=2){
      System.out.println("k ="+k);//0 2 4 6 8
      }
      //变形6
      //for (int h=100;h>0 ;h%=3 ){
      //System.out.println("h ="+h);//100 1 1 ...1
      //}同理:依旧是形成了死循环,为了下面代码可以正常执行,先注释掉了
      //案例:
      //使用for循环,实现1~100所有奇数求和
      //第一种写法:
      //先找到1~100所有奇数,然后相加
      int num =0;
      for (int g =1;g<=100 ;g++ )
      {
                if (g%2==1)//判断g为奇数
                {
                        System.out.println("g ="+g);
                        num += g;//累加(num = num + g;)
                }
      }
      //在for循环语句结束后,输出的num就是最终结果
      System.out.println("1~100所有奇数之和为:"+num);
      //第二种写法:
      num = 0;
      for (int f = 1;f<100 ;f+=2 )
      {
                num +=f;//所有奇数累加
      }
      System.out.println("1~100所有奇数之和为:"+num);
      }
}



HAIHAIHEI 发表于 2022-3-23 23:55

纯手打,如果有不对之处希望各位大佬指出,感激不尽{:1_893:}(注:这次应该是真有不对的地方,老报错,今天没什么进度,明天尽可能赶回来{:1_909:})

sanyuebeichen 发表于 2022-3-24 00:09

我也在学习Java了{:1_901:}

heike666 发表于 2022-3-24 00:38

QINGCHENq 发表于 2022-3-24 01:29

楼主注释写得好仔细啊,简直是太赞了。注释详细的代码看起来是真的舒服。
另外,楼主说老是报错,我看了好几遍也没找出错误(太晚了就没开电脑运行了),会不会是有些符号敲成了中文符号?
楼主如果找到了错误求踹我一脚,我再来学习{:1_918:}

HAIHAIHEI 发表于 2022-3-24 01:42

heike666 发表于 2022-3-24 00:38
g%是啥意思

就是g先从1到100取值后,里面取余2的话,只要结果为1那么就是奇数,那个主要是为了筛选出1到100里面的奇数

p52p 发表于 2022-3-24 05:40

写的不错 学习了

wangming5787 发表于 2022-3-24 06:38

楼主用的哪家的教程呢 能否发一份 我也想学习java或者前端

LittleJackey 发表于 2022-3-24 08:40

楼主写的不错,学习了

chenran208 发表于 2022-3-24 08:46

向楼主学习
页: [1] 2 3
查看完整版本: Java学习第九天