java从入门到精通-day03、选择语句&循环语句&随机数

day03

一.选择语句


1.选择语句:switch

   格式:

      switch(表达式){

         case 常量值1:

         执行语句1;

         break;

         case 常量值2:

         执行语句2;

         break;

         case 常量值3:

         执行语句3;

         break;

         case 常量值4:

         执行语句4;

         break;

         .....

         default:

         执行语句n;

         break;

      }

   2.执行流程:

         1.拿着我们所填的表达式去和下面每一个case后面的常量值去做匹配,匹配上谁,就走

           对应的执行语句

         2.如果以上所有的case都没有匹配上,直接走default对应的执行语句

   3.注意:case后面的常量值的类型要和我们所填写的表达式的类型一致

       break是结束switch语句结构的

代码演示:

   public class Demo01Switch {

   public static void main(String[] args) {

       int i = 5;

       switch (i) {

           case 1:

               System.out.println("涛哥最帅!");

               break;

           case 2:

               System.out.println("波多小姐最美");

               break;

           case 3:

               System.out.println("大桥也很美!");

               break;

           case 4:

               System.out.println("柳岩也很美!");

               break;

           default:

               System.out.println("他们都挺喜欢涛哥!");

               break;

       }

   }

   ========================================================

练习:

   public static void main(String[] args) {

   //定义月份变量,判断季节

   int month = 6;

   //switch语句实现选择

   switch(month) {

       case 1:

           System.out.println("冬季");

           break;

       case 2:

           System.out.println("冬季");

           break;

       case 3:

           System.out.println("春季");

           break;

       case 4:

           System.out.println("春季");

           break;

       case 5:

           System.out.println("春季");

           break;

       case 6:

           System.out.println("夏季");

           break;

       case 7:

           System.out.println("夏季");

           break;

       case 8:

           System.out.println("夏季");

           break;

       case 9:

           System.out.println("秋季");

           break;

       case 10:

           System.out.println("秋季");

           break;

       case 11:

           System.out.println("秋季");

           break;

       case 12:

           System.out.println("冬季");

           break;

       default:

           System.out.println("你输入的月份数字有误");

           break;

   }

}

}

4.没有break会出现case的穿透性

   如果没有break就一直往下穿透执行,直到遇到break或者程序结束了为止

  代码演示:

   public class Demo03Case {

   public static void main(String[] args) {

       int i = 3;

       switch (i) {

           case 1:

               System.out.println("涛哥最帅!");

           case 2:

               System.out.println("波多小姐最美");

           case 3:

               System.out.println("大桥也很美!");

           case 4:

               System.out.println("柳岩也很美!");

               break;

           default:

               System.out.println("他们都挺喜欢涛哥!");

       }

   }

}

二.for循环

循环之for循环

     1.格式:

        for(初始化变量;比较;变量变值){

           循环体

        }

     2.执行流程:

         1.先初始化变量

         2.拿着这个变量去比较

         3.如果比较成功,返回true,那么直接走循环体

         4.变量的值变化(步进表达式)

         5.接着比较,比较返回true,接着走循环体

         6.接着步进表达式

         7.接着比较,直到比较返回false,那么整个循环结束了


     3.代码演示:

        for(int i = 1;i<=10;i++){

           System.out.println("我爱Java");

        }

        或者:

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

           System.out.println("我爱Java");

        }


for循环练习

练习1:求出1-100之间的偶数和

  /*

  1+2+3+4+5+6+7..+100

  需求:1-100之间的偶数和

  步骤:

   1.定义一个变量去接收两个数的和

   2.利用for循环去将1-100之间的数循环出来

   3.拿着循环出来的每一个数去做判断,是否为偶数(数%2==0),如果是余数是0,证明是偶数,相加

     将加完的结果重新赋值给那个变量

   4.输出这个接收和的变量

*/

public class Demo03_ForTest {

   public static void main(String[] args) {

       int sum = 0;

       for (int i = 1;i<=100;i++){

           if (i%2==0){

               sum = sum+i;

           }

       }

       System.out.println("和为:"+sum);

   }

}

练习2:求出所有的水仙花数

/*

  求出所有的水仙花数

    水仙花数:3位数

            个位的立方+十位的立方+百位的立方 = 原数

            153:27+125+1=153

            3 = 153%10;

            5 = 153/10%10;

            1 = 153/100

  步骤:

     1.利用for循环去将所有的3位数循环出来

     2.循环的过程中,拿出每一个被循环出来的数去判断

     3.求出循环出来的数的个位  十位   百位

     4.如果个位的立方+十位的立方+百位的立方 == 原数,直接输出

*/

public class Demo04_ForTest {

   public static void main(String[] args) {

       for (int i = 100;i<=999;i++){

           int ge = i%10;

           int shi = i/10%10;

           int bai = i/100;

           if (ge*ge*ge+shi*shi*shi+bai*bai*bai==i){

               System.out.println(i);

           }

       }

   }

}

练习3:

  /*

  统计水仙花个数:

     步骤:

        1.定义变量去统计水仙花的个数

        2.利用for循环去将所有的3位数循环出来

        3.循环的过程中,拿出每一个被循环出来的数去判断

        4.求出循环出来的数的个位  十位   百位

        5.如果个位的立方+十位的立方+百位的立方 == 原数,统计个数的变量加1

*/

public class Demo05_ForTest {

   public static void main(String[] args) {

       int count = 0;

       for (int i = 100;i<=999;i++){

           int ge = i%10;

           int shi = i/10%10;

           int bai = i/100;

           if (ge*ge*ge+shi*shi*shi+bai*bai*bai==i){

               count++;

           }

       }

       System.out.println("水仙花的个数为:"+count);

   }

}

三.while循环

1.格式:

      初始化变量;

      while(比较){

        循环体;

        步进表达式;

      }

2.执行流程:

        1.初始化变量

        2.比较

        3.如果比较返回true,进入循环体

        4.步进表达式

        5.接着比较,直到比较返回false,while循环结束了!

3.代码演示:

   public class Demo01_While {

   public static void main(String[] args) {

       /*

        循环10次,性感涛哥,在线发牌

        */

       int i = 0;

       while(i<10){

           System.out.println("性感涛哥,在线发牌"+i);

           i++;

       }

   }

}

while循环练习

练习1:

  /*

  需求:求出1-100之前的和利用while循环

*/

public class Demo02_WhileTest {

   public static void main(String[] args) {

       int sum = 0;

       int i = 1;

       while(i<=100){

               sum+=i;//sum = sum+i;

           i++;

       }

       System.out.println(sum);

   }

}

练习2:

/*

  纸的厚度是0.1毫米  珠穆朗玛峰的高度是8844430毫米

  问:折多少次能折出一个珠穆朗玛峰来

  步骤:

      1.定义变量去统计折的次数

      2.定义变量表示纸的厚度

      3.定义变量表示山峰的高度

      4.循环比较,比较纸的厚度是否小于等于山峰的高度,如果符合条件,就折纸  *2

      5.统计次数的变量++

*/

public class Demo03_WhileTest {

    public static void main(String[] args) {

        int count = 0;

        double paper = 0.1;

        double zf = 8844430;

        while(paper<=zf){

          paper*=2;

          count++;

            System.out.println(paper);

        }

        System.out.println(count);


四.死循环

/*

  死循环:一直循环

  条件:一直为true

*/

public class DieFor {

    public static void main(String[] args) {

        /*for (int i = 0;i<10;){

            System.out.println("岳不群自宫了~");

        }*/

        while(true){

            System.out.println("孙悟空是最纯洁的猴");

        }

    }

}

五.嵌套for循环

1.概述:for中有for

2.执行流程:

    先执行外层for循环,再执行内层for循环,内存for循环就一直循环,直到内层for循环结束,外层for循环进行下一次    循环.... 直到外层for循环结束了,那么整个所有的循环都结束了 


3.代码演示:

    public class ForAndFor {

    public static void main(String[] args) {

        for (int fen = 0; fen < 60; fen++) {

            for (int miao = 0;miao<60;miao++){

                System.out.println(fen+"分"+miao+"秒");

            }

        }

    }

}

六.Random随机数

    1.概述:是一个Java自带的类

    2.数据类型:引用数据类型

    3.作用:随机一个数

    4.使用:

          4.1 导包:java.util.Random

          4.2 创建对象:Random 变量名 = new Random();

          4.3 调用方法:

                nextInt()-->是在int型范围内随机

                nextInt(int fanwei):在指定范围内随机一个数

                    0-(fanwei-1)

                需求:从100-999之间随机一个数

                  nextInt(900)+100    (0-899)+100-->整体都加100,所有的数往后挪100位

                      从1-100之间随机: nextInt(100)+1



      5.代码演示

    public class Demo02Random {

      public static void main(String[] args) {

        Random rd = new Random();

        int num = rd.nextInt();

        System.out.println(num);

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

        int result = rd.nextInt(10);

        System.out.println(result);

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

        int result1 = rd.nextInt(900)+100;

        System.out.println(result1); 

    }

}

猜数字小游戏

/*

  猜数字小游戏:随机一个1-100之间的数

      步骤

        1.创建Scanner对象,调用nextInt()方法输入一个整数

        2.创建Random对象,调用nextInt(100)+1

        3.如果我们录入的数和随机的数相等:输出:恭喜你,中奖了

          如果我们录入的数比随机的数大:猜大了!

          如果我们录入的数比随机的数小:猜小了!

*/

public class Demo03RandomTest {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        Random rd = new Random();

        int rdNumber = rd.nextInt(100)+1;

        System.out.println(rdNumber);

        while(true){

            System.out.println("请你输入一个(1-100)之间的数:");

            int scNumber = sc.nextInt();

            //判断

            if (scNumber>rdNumber){

                System.out.println("对不起,您猜大了!");

            }else if(scNumber<rdNumber){

                System.out.println("对不起,您猜小了!");

            }else{

                System.out.println("恭喜你,中奖了");

                break;

            }

        }

    }

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,125评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,293评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,054评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,077评论 1 291
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,096评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,062评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,988评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,817评论 0 273
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,266评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,486评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,646评论 1 347
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,375评论 5 342
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,974评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,621评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,796评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,642评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,538评论 2 352

推荐阅读更多精彩内容