5、位运算和循环

匿名 (未验证) 提交于 2019-12-02 23:49:02

一、上一个内容的复习  

  1、关系运算符、逻辑运算符(多个表达式的逻辑判断)
  2、 短路的与或
  3、条件运算符,用来做赋值操作
  4、位运算符:对表达式以二进制位单位进行运算
    十进制和二进制的转化

二、位运算符:  

    &按位与(先把数字计算成二进制的数,然后从右开始向做写,然后比对每一位的数值,有0就是0)
    |按位或(先把数字计算成二进制的数,然后从右开始向做写,然后比对每一位的数值,有1就是1)
    ^按位异或(先把数字计算成二进制的数,然后从右开始向做写,然后比对每一位的数值,相同为0,不同为1)
    <<左移:(7<<3:2向左移动三位 7*(2^3))
    >>右移:(7>>3:2向右移动三位 7/(2^3))

三、一些小的知识点

  1、工程-包(一般是公司域名的倒置)com.hoohui.test

  2、我们现在使用的一般都是java.util包中的工具,这是java专门的工具包

  3、流程控制要注意每一种情况都要考虑上,否则,程序一定会出现问题的

  4、小方块变暗,则程序执行完;红色则是程序正在执行

四、流程控制

   注意:

      在实现功能的基础上去优化代码:两个相反的判断条件,我们可以用if-else
      else:表示的是否则,不能单独出现,必须要和if配对才能出现
      可以进行不断的嵌套

例子:张三考试成绩,大于90分,奖励他休息一天,否则老师罚他周末补课 /**          * 张三考试成绩,大于90分,奖励他休息一天,否则老师罚他周末补课          */         System.out.println("请输入张三的成绩:");         Scanner s = new Scanner(System.in);         int score = s.nextInt();         //原始 //        if(score>90) { //            System.out.println("可以吃鸡"); //        } //        if(!(score>90)) { //            System.out.println("周末来补课"); //        }         //优化         if(score>90) {             System.out.println("可以吃鸡");         }else {             System.out.println("周末来补课");         }
例子:成绩>=80:良好       成绩>=60:中等       成绩<60:差           /**考虑东西要严谨          *     成绩>=80:良好               成绩>=60:中等               成绩<60:差          */         System.out.println("请输入张三的成绩:");         Scanner s = new Scanner(System.in);         int score = s.nextInt(); //        if(score>=80) { //            System.out.println("良好"); //        } ////        if(score>=60) {修改程序,使之更加完善 //        if(score>=60&&score<80) { //            System.out.println("中等"); //        } //        if(score<60) { //            System.out.println("差"); //        }         //对于上述代码进行优化         if(score>=80) {             System.out.println("良好");         }else {             if(score>=60) {                 System.out.println("中等");             }else {                 System.out.println("差");             }         }         //引入else if的优化         if(score>=80) {             System.out.println("良好");         }else if(score>=60) {             System.out.println("中等");         }else {             System.out.println("差");         }
//if嵌套 例子:学校举办运动会,百米赛跑,成绩13s以内,有资格进入决赛,     根据性别,分别进入男子组和女子组。     System.out.println("请输入张三的百米成绩:");         Scanner s = new Scanner(System.in);         int score = s.nextInt();         System.out.println("请输入张三的性别:");         String gender = s.next(); //        System.out.println(score+"--"+gender);         if(score<13) {             //注意判断:string的数据类型会否相等用equals,不用==             if(gender.equals("男")) {                 System.out.println("进入男子组");             }else {                 System.out.println("进入女子组");             }         }else {             System.out.println("淘汰");         }

  还有一个流程控制语句是switch-case:只能做等值判断,并且有支持的数据类型

  switch(要判断的变量){case 特定值://执行代码;break;default://执行语句;break;(最后一个的break可以省略)}

  只能做等值判断 ;记住要有break的语句进行截住

  

//只能做等值判断//支持的数据类型:byte short int char (后两个是java 1.7以后才支持的)String 枚举         Scanner s = new Scanner(System.in);         int num = s.nextInt();         switch(num) {             case 10:                 System.out.println("中了三等奖");                 break;             case 20:                 System.out.println("中了二等奖");                 break;             default:                 System.out.println("没中奖");         }

五、循环

    重复做同样的意见事情

  

//例子:在控制台打印100遍“hello world”     //2种方式:1、复制打印方式去打印2、用循环语句进行优化代码     //定义一个int 类型的变量,         for(int i=0;i<100;i++) {             System.out.println(i + "hello world");         }

  

      一共有4种循环
        for for-each(增强型for循环) while do-while

        1*for循环
          for(定义循环变量,循环条件,迭代条件){
            //循环语句(也叫循环体)
          }
        2*循环四要素
          初始化循环变量
          循环条件
          迭代(更新循环变量)
          循环体

    初始化循环变量,只执行一次;
    判断循环条件是否成立,如果成立,执行循环体,如果不成立,跳出循环:执行多次
    更新循环变量:多次执行
    循环体:多次执行

    

   

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!