1.给定两个int变量,交换变量的值。
2.给定三个int变量,求其中的最大值和最小值。
int a=10;
int b=15;
int c=5;
int max=a;
int min=a;
if(b>max){
max=b;
}
if(c>max){
max=c;
}
if(b<min){
min=b;
}
if(c<min){
min=c;
}
System.out.println("最小值是:"+min);
System.out.println("最大值是:"+max);
**隐式类型转换:把一个小类型数据给大类型。
显式类型转换:把一个大类型给小类型,需进行强制类型转换。long a=10L;int b=(int)a;
小于4个字节(short,byte)的数据类型,运算的时候会发生类型的提升。如:byte a=1;byte b=2;byte c=(byte)a+b
十进制整数转换为二进制:
十进制转换为二进制思想是除2取余,逆序排列。整数除以2,商继续除以2,得到商为0为止。
如:13转为二进制,
13/2=6余1
6/2=3余0
3/2=1余1
1/2=0余1
余数逆序排列,所以13 表示为二进制位1101
十进制整数转换为十六进制:
十进制整数需要先转换为二进制,然后从二进制转换为十六进制,二进制每四位转成一位十六进制。十六进制每位的取值为0-15,ABCDEF分别代表10-15.
如二进制1000 0010转换为十六进制为0x82
十进制转八进制:
十进制整数需要先转换为二进制,然后从二进制转换为八进制,二进制每三位转成一位八进制。
如二进制1000 0010每三位一组,010 000 010转换为八进制为0202.
位运算符:
&按位与:如果对应位有0,这一位的结果就是0.
|按位或:如果这一位上有1,则就是1,其余都是0.
^按位异或:一样为0,不一样进行或。0 ^n=n.
移位运算符:
1.右移>>:右移补符号位,右移相当于除法。
11的二进制为:0000 1011
11>>1 0000 0101 5
11>>2 0000 0010 2
2.左移<<:左移补0就好了,左移相当于乘法。
11<<1 0001 0110 22
11<<2 0010 1100 44
3.无符号右移>>>:不管符号位是0还是1,统一补0.