笔记第三天

计算机只能进行加法计算,减法也是通过加法进行的。
加法计算:2+2
2  原码(二级制)00000010
   反码          11111101
   补码          11111110
减法计算:2-2
2  原码   00000010
   反码   11111101
-2 补码   11111110
2-2相等于2+(-2)
num+=会自动转换类型。
int num1=3;
num1+=3  ==   num1=num1+3
num=num+是两个运算符,需要强制转换类型。
short num2=3;
num2+=3  ==   num2=short(num2+3)
位运算(转换成二级制后的运算)
& 位与  同时为1结果才为1
   逻辑与(2>3 & 5<8)
   位与(8&4)
| 位或  一个为1结果就位1
~按位取反 8 00001000
          ~ 11110111
^异或 相同为0,不同为1
          8 00001000
          2 00000010
          ^ 00001010
<<向左移后面补0   a*2的b次方
int a=2;
int b=2;
int c;
c=a<<b;
5变成2进制,向左移两位,后面补0.
>>向右移,和符号有关,正号高位补0,负号高位补1,d除以2的e次方
int d=16;
int e=4;
int f;
f=d>>e;
f=4;
>>>和符号无关,高位补0
流程控制
1、顺序结构:
   按照编写代码的顺序,从上而下逐行翻译、执行
   特点:每行代码都能被执行到,且被执行一次。
2、选择结构:看条件
    2.1条件为true(成立),执行代码块
   if(条件){
       //条件为true执行
   }
  2.2 条件为true,执行代码块1,否则(false)执行代码块2
   if(条件){
      //代码块1
   }
   else{
      //代码块2 
   }
   //三目运算符是if-else的简化
   2.3、多重if选择结构
   if(条件1){
 //1
   }else if(条件2){
 //2
   }else if(条件3){
 //3
   }else{
 //4
   }
    2.4、嵌套if选择结构
     if(条件1){
 if(条件2){
        }
     }
变量最好要初始化,数值类型初始化为0
char=空格;、String=""、boolean=true或者false、
写if就要带else。
switch 结构和多重if等价
  switch(表达式){
      case 值1:
   //代码
          break;
      case 值2
          //代码
          break;
      default:
   //代码
          break;
  }
表达式只能是(byte  short int char  枚举)java7开始支持String,括号里可以是变量。case后面只能是值,且必须有空格。、break不是必须的,如果当前case省略了break,那么紧挨着的下一个case会自动执行。default不一定放在最后,可以放在switch里的任何位置。但是通常放在最后,因为java会最后执行default,与代码位置无关。
switch比if更简洁,但不适用于范围的判断。
posted @ 2019-03-21 19:26  朱浩楠  阅读(119)  评论(0)    收藏  举报