笔记第三天
计算机只能进行加法计算,减法也是通过加法进行的。
加法计算:2+2
2 原码(二级制)00000010
反码 11111101
补码 11111110
减法计算:2-2
2 原码 00000010
反码 11111101
-2 补码 11111110
2-2相等于2+(-2)
加法计算: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)
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结果才为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。
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更简洁,但不适用于范围的判断。
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更简洁,但不适用于范围的判断。

浙公网安备 33010602011771号