2020 07 23 3.表达式和语句

3.1常见的运算符和表达式
3.1.1 赋值【=】
3.1.2 算术【+ - * / % ++ --】

import  java.util.Scanner;
public  class  SuanShuDemo1{
	public static void main(String args[]){
                    //创建Scanner类的对象
	   				Scanner  read=new Scanner(System.in);
                   System.out.println("请输入第一个运算数字:");
                  int num1= read.nextInt();
                  System.out.println("请输入第二个运算数字:");
                  int num2= read.nextInt();
                  System.out.println("算术运算符的使用【+  -  *  /  %】:");
                  System.out.println(num1+"+"+num2+"="+(num1+num2));
                  System.out.println(num1+"-"+num2+"="+(num1-num2));
                 System.out.println(num1+"*"+num2+"="+(num1*num2));
	 				System.out.println(num1+"/"+num2+"="+(num1/num2));
                 System.out.println(num1+"%"+num2+"="+(num1%num2));
	}
}
import  java.util.Scanner;
public  class  SuanShuDemo2{
	public static void main(String args[]){
                    //创建Scanner类的对象
	   Scanner  read=new Scanner(System.in);
                   System.out.println("请输入第一个运算数字:");
                   int num1= read.nextInt();
                   System.out.println("num1=="+num1); // 10
                   // ++ 自动加1 [变量++   num1++] [先用后加]
                   //System.out.println("num1++=="+(num1++)); //10
                   //System.out.println("num1=="+num1); //11
                   // ++ 自动加1 [++变量   ++num1] [先加后用]
                   //System.out.println("++num1=="+(++num1)); 
                   //System.out.println("num1=="+num1); 

                    // -- 自动减1 [变量--   num1--] [先用后减]
                   //System.out.println("num1--=="+(num1--)); //10
                   //System.out.println("num1=="+num1); //9
                   // -- 自动减1 [--变量   --num1] [先减后用]
                   System.out.println("--num1=="+(--num1));  //9
                   System.out.println("num1=="+num1); //9
	}
}

3.1.3 关系【> < >= <= == !=】

import  java.util.Scanner;
public  class  BiJiaoDemo{
	public static void main(String args[]){
                    //创建Scanner类的对象
	   				  Scanner  read=new Scanner(System.in);
                   System.out.println("请输入第一个运算数字:");
                   int num1= read.nextInt(); // 10
                   System.out.println("请输入第二个运算数字:");
                   int num2= read.nextInt(); //3
                   System.out.println("【比较运算符】【> <  >=  <=  ==  !=】");
                   System.out.println(num1+">"+num2+"="+(num1>num2));
	                  System.out.println(num1+"<"+num2+"="+(num1<num2));
                  System.out.println(num1+">="+num2+"="+(num1>=num2));
                 System.out.println(num1+"<="+num2+"="+(num1<=num2));
                 System.out.println(num1+"=="+num2+"="+(num1==num2));
                 System.out.println(num1+"!="+num2+"="+(num1!=num2));
                  System.out.println("((10+2)/2) > ((2*10)-8)=="+(((10+2)/2) > ((2*10)-8)));
	}
}

3.1.4 逻辑【1.逻辑运算符 2.位运算符】
1 逻辑运算符 【|| && !】
||【逻辑或】–[短路或]
格式:【表达式A || 表达式B】 ,在某种情况下只判断表达式A,而不用判断表达式B,就能够得到这个逻辑运算的结果【短路】
||【逻辑或】的真值表
Op1 || Op2
True || true true
True || false true
Fales || true true
False || false false
当||【逻辑或】的左边表达式是true的时候,||【逻辑或】的右边表达式是不用计算。

       &&【逻辑与】--[短路与]
      格式:【表达式A  &&  表达式B】 ,在某种情况下只判断表达式A,而不用判断表达式B,就能够得到这个逻辑运算的结果【短路】   
       &&【逻辑与】的真值表
        Op1   &&  Op2
        True   &&  true    true
        True   &&  false    false
        Fales   &&  true    false
        False   &&  false    false
       当&&【逻辑与】的左边表达式是false的时候,&&【逻辑或】的右边表达式是不用计算。
public  class  LuoJiDemo{
  public  static  void  main(String  args[]){
    int  num1=10;
    int  num2=0;
    //java.lang.ArithmeticException: / by zero
    //System.out.println(num1+"/"+num2+"="+(num1/num2));
    //  ||【逻辑或】--[短路或]
    // 当||【逻辑或】的左边表达式是true的时候,||【逻辑或】的右边表达式是不用计算。
    //boolean b=(num1>num2) || ((num1/num2)>1);
    //boolean b=(num1<num2) || ((num1/num2)>1);
    //System.out.println("b=="+b);

   // &&【逻辑与】--[短路与]
   //当&&【逻辑与】的左边表达式是false的时候,&&【逻辑或】的右边表达式是不用计算。
     //boolean b=(num1<num2) && ((num1/num2)>1);
     boolean b=(num1>num2) && ((num1/num2)>1);
     System.out.println("b=="+b);
 }
}

![逻辑非] 求反 !true== false !false==true
3.2 常见语句
1.判断语句【if switch】
if 语句
1.if(){}
2.if(){}else{}
3.if(){}else if(){}else if(){}…
4.if语句的嵌套

import java.util.Scanner;
public  class  IfDemo{
  public  static  void  main(String  args[]){
     //创建Scanner对象
    Scanner  read=new Scanner(System.in);
    System.out.println("请输入一个年龄:");
   //接收年龄值
   int age=read.nextInt();
   //if(){}
   /*
   if(age>0){
      System.out.println("年龄值正常!!");
     }
   */
   //if(){}else{}
   /*
   if(age>0){
      System.out.println("年龄值正常!!");
     }else{
       System.out.println("年龄值输入有误!");
     }
   */
    //if(){}else if(){}else if(){}.....
   /*
    if(age>0 && age<=10){
        System.out.println("儿童!");
    } else if(age > 10 && age <= 18){
       System.out.println("少年!");
    }else if(age  >18 && age <=22){
       System.out.println("青少年!");
    }else{
        System.out.println("年龄值输入有误!");
    }
   */
   //if语句的嵌套
   if(age>0){
       if(age > 200){
           System.out.println("妖怪");
       }else{
          System.out.println("年龄值正常!!");
      }
    }else{
       System.out.println("年龄值输入有误!");
   }
 }
}

switch语句
格式:switch(表达式){
case 常量1: java代码;[break;]
case 常量2: java代码;[break;]
case 常量3: java代码;[break;]
case 常量4: java代码;[break;]
default :java代码 ;[break;]
}
switch语句的表达式的结果的数据类型可以是 byte short char int,枚举类型,jdk7.0以后的可以有String【字符串类型】。
switch语句中的break语句的有无会直接影响执行结果。

import java.util.Scanner;
public  class  SwitchDemo{
  public  static  void  main(String  args[]){
     //创建Scanner对象
    Scanner  read=new Scanner(System.in);
    System.out.println("请输入第一个运算数字:");
    double num1=read.nextDouble();
    System.out.println("请输入第二个运算数字:");
    double num2=read.nextDouble();
    System.out.println("请输一个运算符号【+ - * / %】:");
    String  op=read.next();
    System.out.println("开始计算");
    switch(op){
      case  "+": System.out.println(num1+"+"+num2+"="+(num1+num2));break;
      case  "-": System.out.println(num1+"-"+num2+"="+(num1-num2));break;
      case  "*": System.out.println(num1+"*"+num2+"="+(num1*num2));break;
      case  "/": System.out.println(num1+"/"+num2+"="+(num1/num2));break;
      case  "%": System.out.println(num1+"%"+num2+"="+(num1%num2));break;
    }
 }
}

2.循环【for while do{}while()】
2.1 for 与 while do{}while()
1.for循环
格式:
for(初始条件;判断条件;循环增量/减量){
需要被循环执行的java代码
}
在这里插入图片描述
增强的for循环
For(数组的数据类型 变量名称:被遍历的数据集合【数组/java集合】){
使用变量得到遍历出来的结果
}

public  class  ForDemo1{
	public  static  void  main(String args[]){
	/*
	 for(初始条件;判断条件;循环增量/减量){
		需要被循环执行的java代码	
	}
	*/
	//实例1:循环输出1--10的整数
	for(int i=1;i<=10;i++){
		System.out.println("i=="+i);
		}
	//实例2:循环输出10--1的整数
	for(int j=10;j>=1;j--){
		System.out.println("j=="+j);
		}
	//实例3:计算1--100的整数和【1+2+3+....+100==5050】
	//定义一个保存和的变量
	int sum=0;
	for(int k=1;k<=100;k++){
		sum=sum+k;
	}
	System.out.println("sum=="+sum);

	//实例4:遍历数组
	char chararray[]={'h','e','l','l','o'};
	for(int a=0;a<chararray.length;a++){
		System.out.println("chararray["+a+"]=="+chararray[a]);
	}
	/*
	增强的for循环
     	 for(数组的数据类型   变量名称 : 被遍历的数据集合【数组/java集合】){
               		 使用变量得到遍历出来的结果
		}
	*/
	for(char  charvalue : chararray){
		System.out.println("charvalue=="+charvalue);
	}
	
	}
}

2.2 while 与 do{}while()
while循环
格式:while(判断条件){
需要被循环执行的java代码
}
在这里插入图片描述

public  class  WhileDemo1{
	public  static  void  main(String args[]){
	/*
	while(判断条件){
		需要被循环执行的java代码
	}
	先执行判断条件,如果判断条件的结果为true,那么就执行需要被循环执行的java代码
	否则跳出循环
	*/
	//实例1:循环输出1--10的整数
	//定义初始条件
	int i=1;
	while(i<=10){
	System.out.println("i=="+i);
	//给出循环增量
	i++;
	}
	//实例2:循环输出10--1的整数
	//定义初始条件
	int j=10;
	while(j>=1){
	System.out.println("j=="+j);
	//给出循环减量
	j--;
	}
	//实例3:输出1--100的整数和
	int k=1;
	int sum=0;
	while(k<=100){
	sum=sum+k;
	k++;
	}
	System.out.println("sum=="+sum);
	//实例4:遍历数组
	char chararray[]={'h','e','l','l','o'};
	int a=0;
	while(a<chararray.length){
	System.out.println("chararray["+a+"]="+chararray[a]);
	a++;
	}
	}
}

3.do{}while循环
格式:
do{
需要被循环执行的java代码
}while(判断条件);
在这里插入图片描述

public  class  DoWhileDemo1{
	public  static  void  main(String args[]){
	/*
	do{
	需要被循环执行的java代码
	}while(判断条件)

	先执行需要被循环执行的java代码,然后再判断条件,
	如果判断条件的结果为true,那么就继续执行需要被循环执行的java代码
	否则跳出循环
	*/
	
	//实例1:循环输出1--10的整数
	//定义初始条件
	int i=1;
	do{
	System.out.println("i=="+i);
	i++;
	}while(i<=10);
	
	//实例2:循环输出10--1的整数
	//定义初始条件
	int j=10;
	do{
	System.out.println("j=="+j);
	j--;
	}while(j>=1);
	
	//实例3:循环输出1--100的整数和
	//定义初始条件
	int k=1;
	int sum=0;
	do{
	sum=sum+k;
	k++;
	}while(k<=100);
	System.out.println("sum=="+sum);

	//实例4:遍历数组
	char chararray[]={'h','e','l','l','o'};
	int a=0;
	do{
	System.out.println("chararray["+a+"]="+chararray[a]);
	a++;
	}while(a<chararray.length);
	}
}

1.for与while和do…while的区别?
for循环在中的时候,需要明确被循环的次数,
while和do…while,不需要明确循环次数。
2.while和do…while的区别?
While先判断后执行
do…while先执行后判断
相同条件下While比do…while会多执行一次
3.break与 continue
1.break 含义 打断 【跳出switch,跳出循环】
2.双层循环中如果出现在内层循环结构中,只中断内层循环,如果出现在外层,那么就中断外层循环。

public  class BreakDemo1{
	public  static  void  main(String args[]){
	//break 表示跳出switch语句,或者跳出循环
	/*
	for(int i=1;i<=10;i++){
	   if(i==5){
		break;
		}
                   System.out.println("i=="+i);
	}
	*/
	//双层循环中如果出现在内层循环结构中,只中断内层循环,
	//如果出现在外层,那么就中断外层循环
	//外层循环
	for(int i=1;i<=9;i++){
		/*
		if(i==5){
		      break;
		 }
		*/
		//内层循环
		for(int j=1;j<=9;j++){
			if(j!=5){
				break;
			}
			System.out.println(i+"*"+j+"="+(i*j));	
			}
		}
	}
}

continue语句
continue 继续 出现在循环 【结束本次,进入下次循环】

public  class ContinueDemo{
	public  static  void  main(String args[]){
	//continue 表示结束本次循环,进入下一次
	/*
	for(int i=1;i<=10;i++){
	   if(i==5){
		continue;
		}
                   System.out.println("i=="+i);
	}
	*/
	//外层循环
	 for(int i=1;i<=3;i++){
		if(i==2){
                       		continue;
                      		}
            	  	//内层循环
             		 for(int j=1;j<=3;j++){
                 		System.out.println(i+","+j+"  ");
              			}
        		}
	}
}

4.return
return:return 语句的作用是从当前函数退出,并从那个函数返回一个值
1、返回函数结果
语法为:return+表达式
语句结束函数执行,返回调用函数,而且把表达式的值作为函数的结果。
return 表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值, 由return后面的参数指定。return通常是必要的,因为函数调用的时候计算结果通常是通过返回值带出的。
2、返回函数控制
语法为:return;
通常情况下return后面跟有表达式,但是并不是绝对的。此情况就是单纯的将控制权转交给主调函数继续执行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值