位运算符;三目运算符;键盘录入Scanner 流程控制语句之顺序结构语句week_02

2022-02-12 00:00:00 语句 运算符 录入

位运算符

基本的位运算符:
            &:有零则零
            |:有一则一
            ^:相同为零不同则为一
            特点:1)一个数据被另一个数据位异或两次还是其本身
                 2)实现两个数据间的交换
            ~:按位取反,零变一,一变零
            
位移符号:
        <<:左移:将数据(补码)左移动,右边不够的补零,将左边多余部分自动丢掉
        >>:右移:将数据(补码)右移动,如果最高位为0,左边补0;如果最高位为1,左边补1,将右边多余部分自动丢掉
        >>>:无符号右移:无论最高位是1还是0,始终左补零
        结论:
        <<:将<<符号左边的数据(补码)成以2的移动次幂
        >>:将>>符号左边的数据(补码)除以2的移动次幂

三目运算符

格式:
(表达式)?执行语句1:执行语句2;

键盘录入Scanner

JDK提供了一个Scanner文本扫描了
格式:
//导入包类,卸载class上面
import java.util.Scanner
//创建键盘录入数据对象
Scanner sc = new Scanner(System.in);
//提示并录入数据
System.out.println("请输入一个数据");
int num = sc.nextInt();
//直接输出
System.out.println("你输入的数据为:"+num);

流程控制语句之顺序结构语句

流程控制语句分为三类:
顺序结构语句
            当进入到类中之后,jvm调用main方法,代码由上而下依次加载
            除非一种特例:当jvm退出了就不会进行执行了!
                后期System类中有一个功能:exit(int status) 参数里面为0,表示正常终止jvm
选择结构语句
循环结构语句
​
举例:
class ShunXuDemo{
    
    public static void main(String[] args){ //程序的入口
        //定义变量
        int a = 10 ; //局部变量(在方法定义中的变量)
        System.out.println("a:"+a) ;
        System.out.println("程序开始了...") ;
        
        System.out.println("我爱JavaEE") ;
        
        //让Jvm退出(正常终止正在运行的jvm),main方法就结束了
        System.exit(0) ;
​
        System.out.println("程序结束了...") ;
    
        System.out.println("over...") ;
    }
}

if选择结构语句

三种格式:
​
格式1:                    
    if(表达式){
        语句;                 判断表达式是否成立;如果成成立执行语句
    }                        不成立不会进去if语句
    
格式2:if(表达式){                                    
        语句1;                1)先判断表达式是否成立,如果成立,执行执行语句1;
}else{                       2)如果不成立执行语句2   
        语句2;
}
​
格式3:if(表达式1){               1)判断表达式1是否成立,若成立则执行语句1
        语句1;                  2)若表达式1不成立则判断表达式2是否成立,若成立则执行语句2
}else if(表达式2){              3)若表达式不成立,则判断表达式3是否成立,若成立则执行语句3
        语句2;                    ... 
}else if(表达式3){                 ...
       语句3                   若以上表达式都不成立则执行语句n+1
       ...
       ...
       ...
}else{
    n+1;
}
​
if语句格式2和三元运算符的区别:
        if是一个流程控制语句,不仅能够表示具体的结果,而且还可以一个输出语句体现;
        但是三元运算符,一般情况:就是最终是具体的结果体现!
        if范围大于三元;能够使用三元运算符实现的一定能够使用if格式2;反之,不一定!

Switch语句

Switch语句格式:
            Switch(表达式){
                    语句1:
                    break;
                    语句2:
                    break;
                    ....
                    ....
                    default:
                    语句n
                    break;
            }
            
            
1)switch中的表达式的结果值和case语句匹配,值1和结果匹配,就执行语句1,遇见break,switch结束;
2)  值1和switch表达式结果不匹配,继续判断值2是否匹配,如果匹配,就执行语句2,switch语句结束
...
...
3)如果case语句后面值都不匹配,这个执行default语句,执行语句n,
​
swirch语句执行到末尾结束.
​
Switch语句跟的表达式是什么数据类型
基本数据类型:byte,short ,int ,char
JDK5以后可以是枚举类型(引用类型)
JDK7以后可以是字符串...String
​
​
​
Switch语句注意事项:
1)在switch语句中,case语句后面只能是常量
2)在case语句中,最好携带上break,如果不带break会造成case穿透!
3)default语句是在case中没有匹配的结果,它可以在语句中任何位置,不影响执行流程;如果在语句中,那么最好带上break,否则case穿透了;在语句末尾,break省略!
4)switch语句的结束条件:
    a)遇见break,switch语句结束
    b)程序默认执行到末尾

for循环语句和执行条件

格式:
for(1)初始化语句;(2)条件表达式;(4)控制体语句){
    (3)循环体语句;
    
}
​
执行条件:
1),进行初始化赋值(执行一次)
2),条件成立,--->执行 3)循环体语句
4)执行控制体语句---->再次执行2),若条件成立,---->继续执行3)
...
...
一直执行到2)条件不成立,for循环结束

while循环

while循环格式:
        初始化语句;
        while(条件表达式){
        循环体语句;
        控制体语句;
        }
执行语句:
        1)先判断初始化值
        2)判断条件表达式是否正确,正确则进入循环体
        3)执行控制语句----继续判断条件表达式是否成立-----
        ...
        ...
        4)执行到表达式不成立  while语句结束
        

while语句 和 for语句的区别

共同点:都可以实现循环效果

不同点:格式差异

		for循环:(初始化语句;条件表达式;控制体语句){
				循环体
		}
		初始化语句;
		while(条件表达式){
			循环体
			控制体语句
		}
		
当明确循环次数的时候优先使用for语句,不明确循环次数的时候使用while循环
从内存角度考虑:for循环结束之后,当前里面的局部变量被释放了,节省内存空间!
			while循环,结束之后,虽然扔可以访问到这个变量,但整个main方法结束之后,
			才会释放内存,使用过程中,消耗内存空间!
			for循环比while更好一些!

死循环

	常见的两种死循环
	
	for循环的死循环格式:  ----------JDK源码中常见
	for(;;){
		
		//当满足某个条件的时候,结束 ----->break;
		循环体语句;
	}
	
    while循环:死循环格式   ------开发中使用居多
	while(true){
		
			
		//当满足某个条件的时候,结束 ----->break;
		循环体语句;
	}
	

for循环的嵌套

	for循环语句的嵌套格式:
	格式
		for(初始化语句;条件表达式;控制体语句){---外层循环
			//循环体语句
			for(初始化语句;条件表达式;控制体语句){--- 内层循环
				循环体语句...
			}
		}

跳转控制语句

跳转控制语句:
			break;
			continue;
		    return;
		    
		    
break:中断,结束不能单独使用,只能在Switch循环语句中使用;单循环for循环中使用
			或者在for循环嵌套中使用
			
			
continue:继续---->跳过当前循环,立即进入下次循环;也不能单独使用
    原文作者:乐以消愁
    原文地址: https://blog.csdn.net/m0_61991314/article/details/120477197
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。

相关文章