java基础复习(三)

java基础第三天

1.逻辑运算符

&(逻辑与) |(或) ^(异或) 两边相同false,两边不同true !

&& 最终结果一样 左边为false右边则不执行 具有短路的效果

int x = 3;
int y = 4;
//System.out.println((++x == 3) & (++y == 5));
Syste,.out.println((++X == 3) && (++y == 5)); 短路效果
System.out.println(x);
System.out.println(y);

|| 与单 |的区别同上,前一个为true则为true 也具有短路效果

2.位运算符

& (位与)| ^

如何计算:

位运算符先将值转化为二进制

&:有0则0

|:有1则1

^:相同则0,不同则1

~:按位取反 不过其中算出值来的话 要对原码反码补码进行计算

位异或运算的一个特点:

^的特点:一个数据对另一个数据位异或两次,该数本身不变。

面试题:请自己实现两个整数变量的交换

不需要定义第三方变量

int x = 10 ;

int y = 5;

//方式一:有弊端,很可能会超出int的取值范围

x = x + y;

y = x - y;

x =x-y;

//通过异或

x = x ^ y; //10^5

y =x^y//10^5^5

x=x^y//10^5^10

位运算符 << >> >>>
<< 左移 向左移动几位就是乘与2的几次幂
>> 右移 向右移动几位就是除以2的几次幂 最高位是0,左边补齐0;最高位是1,左边补齐1;
>>> :无符号右移 无论最高位是0还是1,左边补齐0
最有效率的算出 2 * 8
2 << 3 直接操作二进制数

3.三目运算符 (关系表达式)?表达式1:表达式2;

4.java语言基础(键盘录入的基本格式讲解)

​ 1.导包 import java.util.Scanner;

​ 2.创建键盘录入对象 Scanner sc = new Scanner(System.in);

​ 3.通过对象获取数据 int x = sc.nextInt();

5.流程控制语句

1.顺序结构

2.选择结构 if switch

​ 三元运算符

1553699199371

1553699166640

1.switch建议固定值中判断(效率更高一点)

2.if某个区间

3.循环结构

本文链接:

https://heyzen.club/index.php/J/211.html
1 + 4 =
快来做第一个评论的人吧~