Java教程

Java之流程控制语句!

本文主要是介绍Java之流程控制语句!,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一.位运算符与三元运算符

1.位运算符

针对多个数据使用补码进行操作计算结果

2.基本的位运算符

位与&: 有0,则0

位或|: 有1,则1

位异或^:相同则为0,不同则为1

反码~: 按位取反,全部都0变1,1变0 

class Wei{
	
	public static void main(String[] args){
		System.out.println(3 & 4) ;	//结果为:0
		System.out.println(3 | 4) ;	//结果为:7
		System.out.println(3 ^ 4) ;	//结果为:7
		System.out.println(~ 3) ;	//结果为:-4
	}
}

3.位异或^另外一个特点:

一个数据被另一个数据位异或两次,其值是它本身

4.位移符号

<<:左移符号    将这个数据的补码向左移动指定位数,右边不够的补0,将左边多余的移动位数丢弃掉!

>>:右移符号    将这个数据的补码向右移动指定位数,如果最高符号位为0,左边则补0,如果最高符号                          位为1,左边则补1,将右边多余的移动位数丢弃掉!

>>>:无符号右移   无论最高符号位是1还是0,始终左边补0;

   结论:     <<:  将<<符号左边数据乘以2的移动次幂

                >>:  将>>符号左边的数据除以2的移动次幂

5.三元运算符

三元运算符格式:  (表达式)?执行语句1(具体的结果):执行语句2(具体的结果);

执行流程:  先判断表达式的结果是否成立,如果结果为true,就执行成立的语句1;
                 否则不成立,则执行不成立的语句2;

二.键盘录入数据

作用:  Jdk提供了一个Scanner:文本扫描器类

步骤:  1)导包  import java.util.Scanner;

          2)创建文本扫描器对象  Scanner 对象名 = new Scanner(System.in) ;

          3)提示并录入数据  System.out.println("请您输入数据:") ;

                                         int 变量名= 对象名.nextInt() ;

         4)完成操作需求

//导包
import java.util.Scanner ;
class ScannerDemo{
	public static void main(String[] args){
		//创建文本扫描器对象
		Scanner sc = new Scanner(System.in) ;
		//提示并录入数据
		System.out.println("请您输入一个数据:") ;
		int a = sc.nextInt() ; 
		//String num = sc.nextLine() ;
		//直接输出
		System.out.println("您输入的数据是:"+a) ;

三.流程控制语句

   1. 顺序结构语句

    特点: 当进入到类中之后,jvm调用main方法,代码由上而下依次加载

class ShunXu{
	public static void main(String[] args){ 
		System.out.println("a") ;
		System.out.println("b") ;
		System.out.println("A") ;
		System.out.println("B") ;
		System.out.println("0") ;
	}
}

2.选择结构语句之if

    1)格式1:if(表达式){
                语句;
            }

       执行流程:  首先表达式是否成立,成立,则执行该语句     不成立,不会进入if里面;

class IfDemo1{
	public static void main(String[] args){	
		if(x>=10){
			System.out.println("x大于或者等于10") ;
		}
		if(x<10){
			System.out.println("x小于10") ;
		}
		
	}
}

    2)格式2:if(表达式){
        语句1;
    }else{
        语句2;
    }

    执行流程: 1.先判断表达式是否成立,如果成立,执行执行语句1;  

                     2.如果不成立,则执行语句2;

class IfDemo2{
	public static void main(String[] args){
		if(1==2){
			System.out.println("这个两个数相等") ;
		}else{
			System.out.println("这个两个数不相等") ;
		}
		
	}
}

   3)格式3: if(表达式1){
        语句1 ;
    }else if(表达式2){   
        语句2;
    }else if(表达式3){
        语句3;
        ...
        ...
        ...
    }else{
        语句n+1;
    }

     执行流程:  1.首先判断表达式1是否成立,如果成立,则执行语句1;

                       2.如果上面表达式1不成立,继续判断表达式2是否成立,如果成立,执行语句2

                       3.如果表达式2也不成立,继续判断表达式3是否成立,如果成立,执行语句3

                       4.如果上面的条件表达式都不成立,则执行最终语句n+1 ;

import java.util.Scanner;
class IfDome3{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入送货件数");
		int num = sc.nextInt();
		if(num<0 || num>200){
			System.out.println("你输入的数据不合法");
		}else if(num>=150 && num<=200){
			System.out.println("优秀");
		}else if(num>=100 && num<150){
			System.out.println("中等");
		}else if(num>=50 && num<100){
			System.out.println("及格");
		}else{
			System.out.println("最差");
		}
	
	}
}

 3.选择结构语句之switch

   格式:  switch(表达式){
            case 值1:
                语句1;
                break ; 
            case 值2:
                语句2;
                break ;
            ...
            ...
            ...
            default:
                语句n+1 ;
                break ;
        }

    执行流程:  1.switch中的表达式的结果值和case语句匹配,值1和结果匹配,就执行语句1,遇见                                   break,switch结束;

                      2.值1和switch表达式结果不匹配,继续判断值2是否匹配,如果匹配,就执行语句                                      2,switch语句结束

                      3.如果case语句后面值都不匹配,这个执行default语句,执行语句n+1,程序执行到末尾                           结束...

import java.util.Scanner ;
class SwitchDome{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in) ;
		System.out.println("请您输入一个数据(1-7)") ;
		int week = sc.nextInt() ;
		switch(week){
			case 1:
				System.out.println("星期一") ;
				break ;
			case 2:
				System.out.println("星期二") ;
				break ;
			case 3:
				System.out.println("星期三") ;
				break ;
			case 4:
				System.out.println("星期四") ;
				break ;
			case 5:
				System.out.println("星期五") ;
				break ;
			case 6:
				System.out.println("星期六") ;
				break ;
			case 7:
				System.out.println("星期日") ;
				break ;	
			default:
				System.out.println("输入数据不合法") ;
				break ;
		}
		
	}
}

4.循环控制语句for

格式: for(初始化语句;条件表达式;步长语句/控制体语句){
        循环体语句;
    }

 执行流程:  1.初始化语句对变量进行赋值

                   2.判断条件表达式是否成立;     如果是成立,执行循环体语句;

                   3.继续执行控制体语句 

                   4.继续回到2里面判断  如果是成立,执行循环体语句;

                      继续回到3

                   5.一直执行到条件不成立结束;

class ForDemo{
	public static void main(String[] args){
        for(int x = 1 ; x <=10 ; x ++ ){
			System.out.println("HelloWorld") ; 
		}
	}
}

5.循环控制语句while

  格式: while(条件表达式){
            循环体语句;
            控制体语句;
        }

  执行流程: 1.先初始化赋值

                   2.判断条件表达式是否成立,成立,则执行循环体语句

                   3.执行控制体语句---继续判断条件是否成立,----循环

                   4.执行到条件表达式不成立,while语句结束

class WhileDemo{
	public static void main(String[] args){
		int x = 1 ; 
		while(x<=10){
			System.out.println("helloworld") ;
			x ++ ;
		}
    }
}

6.循环控制语句Do while

  格式:do{
        循环体语句;
        控制体语句;
    }while(条件表达式) ;

   执行流程:1.初始化语句赋值

                   2.执行循环体语句

                   3.执行控制体语句

                   4.条件表达式判断,如果条件成立,继续执行循环体

                   5.条件表达式不成立,语句结束;

class DoWhileDemo{
	public static void main(String[] args){
		int x = 6 ;
		do{
			System.out.println("HelloWorld") ;
			x ++ ;
		}while(x<=5) ;
	}
}

四.跳转控制语句

1.break ;中断,结束

  1)只能在switch或者循环语句中使用;  单循环for循环中使用

  2)不能单独使用

2.继续

  1)不能单独使用

  2)结束当前循环,立即进入下次循环

这篇关于Java之流程控制语句!的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!