if语句

//      单一条件
        /**
         * if(布尔表达式A){
         *  语句B
         * }
         * A为true 执行B,否者不执行 
         * 
         * 可以省略if语句的花括号,编译器在识别代码时默认添加,只括if语句下一行代码,一般不会省略使用花括号提高代码可阅读性
         */
        int itemNum=100;
        int buyNum=1000;
//      if(buyNum<=itemNum) 
//          System.out.println("执行购买商品的业务逻辑");
//      if(buyNum<=itemNum) { 
//      System.out.println("执行购买商品的业务逻辑");
//      }
//      System.out.println("hahhah");
//      
//      二选一 
        /**
         * if(布尔表达式A){
         *  语句B
         * }else{
         *   语句C
         * }
         * 如果A为true,执行B,否则执行C,B和C无论如何都会执行其中一个
         */
        if(buyNum<=itemNum) {
            System.out.println("执行购买商品的业务逻辑");
        }else {
            System.out.println("您购买的商品数量超标了");
        }

//      多分支
        /**
         * if(布尔表达式A){
         *  语句B
         * }else if(布尔表达式A1){
         *  语句B1
         * }else if(布尔表达式A2){
         *  语句B2
         * }..
         * else{
         *  语句B3
         * }
         *  如果A为true,执行B,后续代码不在判断,if语句结束
         *  如果A为false,继续判断A1,如果A1为true,执行B1,if语句结束
         *  else匹配所有不满足条件的情况下执行B3
         */
//      需求:  星期一:上班  星期二:加班  星期三:不想写代码  星期四:通宵写代码  星期五:离职   星期六:睡大街  星期天:找工作   
        int week=9;
        if(week==1) {
            System.out.println("上班");
        }else if(week==2) {
            System.out.println("加班 ");
        }
        else if(week==3) {
            System.out.println("不想写代码  ");  
        }
        else if(week==4) {
            System.out.println("通宵写代码  ");  
        }
        else if(week==5) {
            System.out.println("离职  "); 
        }
        else if(week==6) {
            System.out.println("睡大街 "); 
        }else if(week==7) {
            System.out.println("找工作 ");
        }else {
            System.out.println("请选择正确的日期 ");
        }
        int money=5000000;
        char home='有';
        if(10000000<=money && home=='有') {
            System.out.println("我们结婚吧");
        }else {
            System.out.println("你是个好人");
        }

        if(10000000<=money ||  home=='有') {
            System.out.println("我们结婚吧");
        }else {
            System.out.println("你是个好人");
        }

    }

switch语句

//      switch语句
        /**
         * switch(表达式X){
         *  case 常量:
         *      语句块A;
         *      break;
         *  case 常量:
         *      语句块B;
         *      break;
         *      ...
         *  default:
         *      语句块B;
         * 
         * }
         * 执行顺序:
         * switch一旦碰到第一次case匹配,程序就会跳转到这个标签位置,
         * 开始顺序执行以后所有的程序代码,而不管后面的case条件是否匹配,
         * 直到碰到break关键字或者结束switch语句的大括号为止
         * 
         * ①case只能是常量不能是变量或表达式
         * ②表达式x的值只可以接受四个基本数据类型和对应包装类(int、byte、char、short),枚举型,jdk1.7之后表达式x可以接受String 
         * ③switch case中的值必须要与switch表达式的值具有相同的数据类型
         * ④不允许有重复的case取值
         * ⑤switch的结束:遇到break才结束否者直到switch语句块结束
         * ⑥case之间与default没有顺序。先判断所有的case,没有匹配的case执行default。因此一般将default放在case后面
         * 
         */
//      10~20之间:8000块   20~30:7000块   30~40:6000块   40~50:5000块  50~60 :4000块  其他0
        int age=98;
        int level=age/10;
//      switch(level) {
//       case 1:
//           System.out.println("奖金8000");
//           break;
//       case 2:
//           System.out.println("奖金7000");
////             break;
//       case 3:
//           System.out.println("奖金6000");
////             break;
//       case 4:
//           System.out.println("奖金5000");
////             break;
//       case 5:
//           System.out.println("奖金4000");
////             break;
//      default:
//           System.out.println("奖金0");
//       
//      }

        switch(level) {
        default:
             System.out.println("奖金0");
         case 1:
             System.out.println("奖金8000");
//           break;
         case 2:
             System.out.println("奖金7000");
//           break;
         case 3:
             System.out.println("奖金6000");
             break;
         case 4:
             System.out.println("奖金5000");
             break;
         case 5:
             System.out.println("奖金4000");
             break;
        }
//      String name="张三";
//      switch(name) {
//       case "张三":
//           System.out.println("小三的爸爸");
//           break;
//       case "李四":
//           System.out.println("小四的爸爸");
//           break;
//       
//   }
//      只要i满足1 2 3 4就会执行语句块A
        int i=5;
        switch(i) {
         case 1:
         case 2:
         case 3:
         case 4:
             System.out.println("里面没有10");//语句块A
             break;
         case 5:
         case 10:
             System.out.println("里面有10和5");//语句块B
             break;

        }
    }

接收控制台输入

//      String s1="我爱你,中国";
//      System.out.println(s1);//我爱你,中国
//      
//      接收控制台输入
        Scanner sc=new Scanner(System.in);
////        接收控制台输入的整型
//      int messageInt=sc.nextInt();//这个方法会阻塞,当你在控制台输入数据并按下回车键阻塞解除
//      System.out.println(messageInt);
////        接收制台输入的浮点型
//      double messageDouble=sc.nextDouble();//这个方法会阻塞,当你在控制台输入数据并按下回车键阻塞解除
//      System.out.println(messageDouble);
//      接收制台输入的字符串 :得到用户输入的字符串,空格结束
//      String messageString=sc.next();//这个方法会阻塞,当你在控制台输入数据并按下回车键阻塞解除
//      System.out.println(messageString);
        String message=sc.nextLine();//这个方法会阻塞,当你在控制台输入数据并按下回车键阻塞解除
        System.out.println(message);

随机数

Random rn=new Random();
//      随机产生int大小内的整型数据
        int message=rn.nextInt();
        System.out.println(message);
//      随机产生0-10之间的整型数据:包括0不包括10
        message=rn.nextInt(10);
        System.out.println(message);
//      随机产生0-1之间的浮点型数据 不包括1
        double messageDouble=rn.nextDouble();
        System.out.println(messageDouble);
//      随机产生10~20的数据
        int i=(int)(rn.nextDouble()*10)+10;
        System.out.println(i);


//      产生一个12以内的随机月份,和一个30以内的随机天数,输出该日是本年的第多少天(不考虑闰年)
        int month=rn.nextInt(12)+1;
        int day=rn.nextInt(30)+1;
        if(month==1) {
            System.out.println("第"+day+"天");
        }else if(month==2) {
            System.out.println("第"+(31+day)+"天");
        }
        else if(month==3) {
            System.out.println("第"+(59+day)+"天");
        }
        else if(month==4) {
            System.out.println("第"+(90+day)+"天");
        }
        else if(month==5) {
            System.out.println("第"+(120+day)+"天");
        }
        else if(month==6) {
            System.out.println("第"+(151+day)+"天");
        }
        else if(month==7) {
            System.out.println("第"+(181+day)+"天");
        }
        else if(month==8) {
            System.out.println("第"+(212+day)+"天");
        }
        else if(month==9) {
            System.out.println("第"+(243+day)+"天");
        }
        else if(month==10) {
            System.out.println("第"+(273+day)+"天");
        }
        else if(month==11) {
            System.out.println("第"+(304+day)+"天");
        }
        else if(month==12) {
            System.out.println("第"+(334+day)+"天");
        }

for循环

//      操作执行多次,就需要使用循环结构

        /**
         * 语法:
         *  for(初始化表达式A;判断表达式B;循环后的操作表达式C){
         *      语句D
         * }
         * 
         * 执行顺序:
         *      ①A先执行,A只会执行一次
         *      ②执行B,如果B为true,执行D,再执行C
         *      ③C执行完之后再执行B,如果B为true再执行D..
         *      往复循环直到B为false循环表达式结束
         */
//      输出一百次我爱你,中国
//      for(int i=0;i<100;i++) {
//          System.out.println("我爱你,中国"+i);
//      }
//      int i; 
//      for(i=0;i<100;i++) {
//      System.out.println("我爱你,中国"+i);
//  }

//      int i; 
//      for(i=0;i<100;) {
//          i++;
//      System.out.println("我爱你,中国"+i);
//  }

//      int i; 
//      for(i=0;i<100;) {
//      System.out.println("我爱你,中国"+i);
//      i++;
//  }

//      死循环:没有循环终止条件或者循环终止条件一直为true,死循环后面的代码会编译报错
//      for(;1<2;) {
//          System.out.println("我爱你,中国");
//      }
//      for(;;) {
//          System.out.println("我爱你,中国");
//      }
//      System.out.println("hhha");
//      for(int i=0;;i++) {
//      System.out.println("我爱你,中国");
//   }
        for(int i=0;;) {
            System.out.println("我爱你,中国");
         }

while和do while循环

//      操作执行多次,就需要使用循环结构

        /**
         * 语法:
         *  for(初始化表达式A;判断表达式B;循环后的操作表达式C){
         *      语句D
         * }
         * 
         * 执行顺序:
         *      ①A先执行,A只会执行一次
         *      ②执行B,如果B为true,执行D,再执行C
         *      ③C执行完之后再执行B,如果B为true再执行D..
         *      往复循环直到B为false循环表达式结束
         */
//      输出一百次我爱你,中国
//      for(int i=0;i<100;i++) {
//          System.out.println("我爱你,中国"+i);
//      }
//      int i; 
//      for(i=0;i<100;i++) {
//      System.out.println("我爱你,中国"+i);
//  }

//      int i; 
//      for(i=0;i<100;) {
//          i++;
//      System.out.println("我爱你,中国"+i);
//  }

//      int i; 
//      for(i=0;i<100;) {
//      System.out.println("我爱你,中国"+i);
//      i++;
//  }

//      死循环:没有循环终止条件或者循环终止条件一直为true,死循环后面的代码会编译报错
//      for(;1<2;) {
//          System.out.println("我爱你,中国");
//      }
//      for(;;) {
//          System.out.println("我爱你,中国");
//      }
//      System.out.println("hhha");
//      for(int i=0;;i++) {
//      System.out.println("我爱你,中国");
//   }
        for(int i=0;;) {
            System.out.println("我爱你,中国");
         }

循环中断

//break:跳出当前循环;直接结束循环
    //continue:跳出本次循环执行下一次循环

    public static void main(String[] args) {
//      for循环输出0-99:只输出到0-55
//      for(int i=0;i<100;i++) {
//          if(i==56) {
//              break;
//          }
//          System.out.println(i);
//      }
//      

//      for循环输出0-99:除了56
//      for(int i=0;i<100;i++) {
//          if(i==56) {
//              continue;
//          }
//          System.out.println(i);
//      }

    }

循环嵌套

/**
 * 
 * 循环体中再嵌套循环语句
 * 
 * @author Administrator
 *
 */
public class _循环嵌套 {
    public static void main(String[] args) {
//      需求:输出5次0~9
//  for(int j=1;j<6;j++) {
//      System.out.println("第"+j+"次"+"-----------------------------");
//      for(int i=0;i<10;i++) {
//          System.out.println(i);
//      }
//  
//   }  
//      int j=1;
//      while(j<6) {        
//          System.out.println("第"+j+"次"+"-----------------------------");
//          for(int i=0;i<10;i++) {
//              System.out.println(i);
//          }
//          j++;
//      }

//      需求:输出5次0~9  第2二次不输出
//      for(int j=1;j<6;j++) {
//          if(j==2) {
//              continue;
//          }
//          System.out.println("第"+j+"次"+"-----------------------------");
//          for(int i=0;i<10;i++) {
//              System.out.println(i);
//          }
//   }  
//      需求:输出5次0~9  每次的4不输出
//      for(int j=1;j<6;j++) {
//          System.out.println("第"+j+"次"+"-----------------------------");
//          for(int i=0;i<10;i++) {
//              if(i==4) {
//                  continue;
//              }
//              System.out.println(i);
//          }
//   }  

//      需求:输出5次0~9  到第四次结束输出
//      for(int j=1;j<6;j++) {
//          if(j==4) {
//              break;
//          }
//          System.out.println("第"+j+"次"+"-----------------------------");
//          for(int i=0;i<10;i++) {
//              System.out.println(i);
//          }
//   }  
//      需求:输出5次0~9  每次到第三个数结束(0~2)
//      for(int j=1;j<6;j++) {
//      System.out.println("第"+j+"次"+"-----------------------------");
//      for(int i=0;i<10;i++) {
//          if(i==3) {
//              break;
//          }
//          System.out.println(i);
//      }

//      给循环起别名(了解)
//      需求:第一次循环的时候如果遇到3结束整个循环
     outer:for(int j=1;j<6;j++) {
        System.out.println("第"+j+"次"+"-----------------------------");
        inner:for(int i=0;i<10;i++) {
            if(i==3) {
                break outer;
            }
            System.out.println(i);
        }
     }  

    }

求素数

public static void main(String[] args) {
//      只能被1和本身整除的数称为素数

//      编写一个程序,找出大于200的最小的素数[选做题]
//        找出所有小于300的素数
//        找出所有小于300的素数的个数


//        找出所有小于300的素数  
//      for(int i=0;i<=300;i++) {  
//          //0和1不是素数
//          if(i==0 || i==1) {
//              continue;
//          }
//          boolean flag=true;//一开始规定其为素数
//      证明该数是不是素数:用其本身除大于1小于本身的所有数,如果能被整除就不是素数
//          for(int j=2;j<i;j++) { 
//              if(i%j==0) {
//                  flag=false;//不是素数
//                  break;
//              }
//          }
//          if(flag) {
//              System.out.println(i+"是素数");
//          }
//          
//      }

//      int num=0;//素数的个数
////          找出所有小于300的素数的个数
//      for(int i=0;i<=300;i++) {  
//      
//      //0和1不是素数
//      if(i==0 || i==1) {
//          continue;
//      }
//      boolean flag=true;//一开始规定其为素数
////    证明该数是不是素数:用其本身除大于1小于本身的所有数,如果能被整除就不是素数
//      for(int j=2;j<i;j++) { 
//          if(i%j==0) {
//              flag=false;//不是素数
//              break;
//          }
//      }
//      if(flag) {
//          num++;
//      }
//      
//  }
//  System.out.println(num);    
//  

//      编写一个程序,找出大于200的最小的素数[选做题]
        for(int i=200;i<300;i++) {
            boolean flag=true;
            for(int j=2;j<i;j++) {
                if(i%j==0) {
                    flag=false;
                    break;
                }
            }
            if(flag) {
                System.out.println(i);
                break;
            }
        }
    }
最后修改:2020 年 09 月 20 日 09 : 04 AM
如果觉得我的文章对你有用,请随意赞赏