3.选择结构

  a.if:

    格式一:

       if(表达式1){

          表达式1为真才执行

       }

    格式二:

       if(表达式1){

          表达式1为真才执行

       }else{

          表达式1位假才执行

       }

    格式三:判断工龄的范围,判断成绩的范围

      if(表达式1){

         表达式1为真才执行

      }else if(表达式2){

          表达式1为假并且表达式2为真 才执行 

      }else if(表达式3){

      表达式1为假并且表达式2为假并且表达式3为真 才执行 

      }...

  b.switch(理解,但是它不常用)

   1.应用场景:判断四季(春夏秋冬),判断星期,根据用户的选择,进行对应的操作

     Scanner scan=new Scanner(System.in);

     int choice=scan.nextInt();

     switch(choice){

     case 1: 

        //一般在此处调用独立的方法

        break;

     case 2:

       //一般在此处调用独立的方法

       break;

     ....

     default:

       //系统没有的选项

       System.out.println("你想干啥?");

     }

    2.case 穿透:不遇到break,不会跳出switch,将会一直执行下面的case

      int m=3;

      switch(m){

      case 1:

         System.out.println(m+1);

      case 2:

         System.out.println(m*2);

        case 3:

           System.out.println("case3");

           break;

      }

 

4.循环结构

  a.单层循环:遍历

    1.数组遍历

      int[] arr={4,5,6};

      for (int i=0;i<arr.length;i++) {

        System.out.print(arr[i]+" ");

      }

    2.字符串遍历

      String str="Hello";

      第一种:

        for (int i=0;i<str.length();i++) {

         System.out.println(str.charAt(i));

        }

      第二种:

        char[] charArr=str.toCharArray();//转换为字符数组再去遍历

        for (int i=0;i<charArr.length;i++) {

          System.out.println(charArr[i]);

        }

    

    3.集合遍历

      ArrayList<String> al=new ArrayList<String>();

      al.add("慕容紫英");

      al.add("柳梦璃");

      for(int i=0;i<al.size();i++){

        String element=al.get(i);

        System.out.println(element);

      }

 

  b.双层循环:二维数组遍历

    int[][] arr={{666,888,1314},{999,520,521,18}};//定义一个二维数组,这个二维数组中包含2个一维数组

                                                  //第一个一维数组长度为3,第二个一维数组长度为4

 

    /*

     1.首先拿到一个维数组

     2.遍历这个一维数组

    */

     for(int i=0;i<arr.length;i++){//控制遍历的一维数组的个数

        for(int j=0;j<arr[i].length;j++){//遍历当前一维数组中的元素

                                    //arr[i]代表当前遍历的一维数组

                              

           System.out.print(arr[i][j]+" ");

       

       }

      System.out.println();  //内层循环走完,代表当前一维数组的元素遍历完毕,末尾加换行,输出下个一维数组的长度

 

     } 

5.键盘录入与随机数

  1.键盘录入:

    a.nextInt():从键盘录入一个整数

    b.nextLine():从键盘录入一个字符串

    c.nextDouble():从键盘录入一个小数

  2.键盘录入注意

    Scanner scan=new Scanner(System.in);

    scan.nextInt();//当你录入3,按回车,其实录入的数据是 3\r\n

                    //nextInt()方法只扫描整形数据的3,不扫描\r\n

    scan.nextLine();//\r\n会被nextLine()接收,而nextLine()遇到\r\n直接结束,不再让用户录入

    scan.nextInt();//当你录入3,按回车,其实录入的数据是 3\r\n

                    //nextInt()方法只扫描整形数据的3,不扫描\r\n

    scan.nextLine();//\r\n会被nextLine()扫描处理,那么下面的nextLine()就可以正常录入

    scan.nextLine(); 

  3.java.util.Random:验证码,猜数字小游戏

    a.产生[m,n]的随机数:nextInt(n-m+1)+m

    

    b.随机取出数组/集合中的元素

      int[] arr={1,2,4,5,6};

      Random r=new Random();

      int ranIndex=r.nextInt(arr.length);//0<=产生的随机数<=arr.length-1

      System.out.println(arr[ranIndex]);

      ArrayList<String> al=new ArrayList<String>();

      al.add("慕容紫英");

      al.add("柳梦璃");

      al.add("云天河");

      al.add("韩菱纱");

      Random r=new Random();

      int ranIndex=r.nextInt(al.size());//0<=产生的随机数<=arr.length-1

      System.out.println(al.get(ranIndex));

   

posted on 2019-05-21 16:14  小小一  阅读(197)  评论(0编辑  收藏  举报