【JAVASE系列】02_运算符与控制语句

一、运算符

1、算术运算符

运算符含义
+求和
-相减
*乘积
/
%求余数(求模)
++自加一
- -自减一

2、关系运算符

  • 关系运算符的结果一定是布尔类型:TRUE/FALSE
  • 关系运算符比较的是数值是否相等
  • = 是赋值运算符
  • ==是关系运算符
运算符含义
>大于
>=大于等于
<小于
<=小于等于
==等于
!=不等于
    public static void main(String[] args) {
        int a=10;
        int b=10;
        System.out.println(a>b);
        System.out.println(a>=b);
        System.out.println(a<b);        
        System.out.println(a!=b);
        System.out.println(a<=b);
        System.out.println(a==b);        
    }

3、逻辑运算符

  • 逻辑运算符要求两边的算子都是布尔类型的,并且逻辑运算符最终的运算结果也是一个布尔类型
  • 短路与和逻辑与的最终运算结果是相同的,只不过短路与存在短路现象
  • 短路或和逻辑或的最终运算结果是相同的,只不过短路或存在短路现象
  • 右边表达式不执行,这种现象叫做短路现象
运算符含义结果
&逻辑与(可以翻译成并且)两边都是true,结果才是true
逻辑或(可以翻译成或者)有一边是true,结果就是true
!逻辑非(取反)!true = false、!false = true
&&短路与两边都是true,结果才是true
││短路或有一边是true,结果就是true

4、赋值类运算符

  • 赋值类运算符的优先级:先执行等号右边的表达式,将执行结果赋值给左边的变量
运算符含义
=等于
+=加等于
-=减等于
*=乘等于
/=除等于
%=取模等于

5、字符串连接运算符

关于java中的 “ + ” 运算符:

1、+运算符在java当中有两个作用:

  • 加法运算,求和
  • 字符串的连接运算

2、当 “ + ” 运算符两边的数据都是数字的话,一定是进行加法运算

3、当 “ + ” 运算符两边的数据只要有一个数据是字符串,则一定会进行字符串的连接运算。并且连接运算之后的结果还是一个字符串类型。

数字+数字–> 数字【求和】

数字+“字符串”–> “字符串”【字符串连接】

4、在一个表达式当中可以出现多个 “ + ” 运算符,在没有添加小括号的前提下,遵循自左向右的原则

    public static void main(String[] args) {
        System.out.println(10+20);//结果:30
        System.out.println(10+20+"30");//结果:3030
        System.out.println(10+(20+"30"));//结果:102030
    }

要求在控制台上动态输出两数字之和:

    public static void main(String[] args) {
        int a=10;
        int b=20;
        System.out.println(a+" + "+ b + " = " + (a+b));
    }

引用类型string,是javase当中提供的字符串类型

        //string是引用数据类型,s是变量名,“abc”是string类型的字面值
        string s="abc";
        
        //定义一个string类型的变量,起名为username,赋值“zhangsan”
        string username="zhangsan";
        
        //编译错误,类型不兼容
        string ss=10;

6、三目运算符

语法规则:布尔表达式?表达式1:表达式2

        //定义布尔类型的变量
        boolean sex=false;
        char c=sex ? '男':'女';
        
        //编译报错,因为结果为’女‘,这不是一个完整的java语句
        sex ? '男':'女';

二、控制语句

  • 选择语句
    • if,if…else
    • switch
  • 循环语句
    • for
    • while
    • do…while( )
  • 控制循环语句
    • break
    • continue

1、if语句的嵌套

需求:判断当前的天气:

  • 当外边下雨的时候,带雨伞:

    • 判断性别:
      • 男,则带一把大雨伞
      • 女,则带一把小花伞
  • 当外边是晴天的时候:

    • 判断温度:
    • 男,带墨镜
    • 女,涂防晒霜
  • 注:
    1、会使用嵌套
    2、天气状况,温度,性别都需要从键盘输入
    3、使用0或者1表示

        System.out.println("请输入当前天气(0:晴天,1:下雨):");
        java.util.Scanner s=new java.util.Scanner(System.in);
        int weather = s.nextInt();
        if(weather==0 ){
            System.out.println("当前的天气是晴天");
            System.out.print("请输入当前气温:");
            int temp=s.nextInt();
            if(temp>=30){
                System.out.print("请输入性别(0:女,1:男):");
                int sex=s.nextInt();
                if(sex==0){
                    System.out.println("搽防晒霜");
                }else{
                    System.out.println("带墨镜");
                }
            }

        }else{
            System.out.println("当前的天气是雨天");
            System.out.println("请输入性别(0:女,1:男):");
            int sex=s.nextInt();
            if(sex==0){
                System.out.println("带小花伞");
            }else{
                System.out.println("带大黑伞");
            }
        }

2、Switch语句

	switch(int或者String类型的字面值或者变量){
        *           case int或者String类型的字面值或者变量:
        *                  java语句;
        *                  java语句;
        *                  java语句;
        *                  java语句;        
        *          case int或者String类型的字面值或者变量:
        *                  java语句;
        *                  java语句;
        *                  java语句;
        *                  java语句;
        *                  。。。
        * }

switch语句的执行原理:

  • switch后面的小括号当中的数据和case后面的数据进行一一匹配,匹配成功则执行分支,按照自上而下的顺序依次匹配
  • 匹配成功的分支执行,当分支中有break语句的话,整个switch语句终止
  • 匹配成功的分支执行,当分支中没有break语句的话,直接进入下一个分支继续执行(无需进行匹配)。这种现象叫做case穿透现象
  • 所有分支都没有匹配成功,当有default语句的话,会执行default语句
  • switch和case后面只能是int或者string类型的数据,不能是其他类型。当然,byte,short,char也可以直接写到switch和case的后面,因为它们可以进行自动类型转换。
java.util.Scanner s1=new java.util.Scanner(System.in);
        System.out.print("请输入星期几:");
        String day=s1.next();
        switch (day){
            case "星期一":
                System.out.println("星期一");
                break;
            case "星期二":
                System.out.println("星期二");
                break;
            case "星期三":
                System.out.println("星期三");
                break;
            case "星期四":
                System.out.println("星期四");
                break;
            case "星期五":
                System.out.println("星期五");
                break;
            case "星期六":
                System.out.println("星期六");
                break;
            case "星期天":
                System.out.println("星期天");
                break;
            default:
                System.out.println("输入参数非法");
        }

3、break语句

  • 1、break语句是java语言当中的关键字,被翻译为中断/折断
  • 2、break+“ ;”可以成为一个单独的完整的java语句
  • 3、break语句使用在switch语句当中,用来终止switch的语句执行
  • 4、break语句同样可以使用在for循环当中,用来终止循环的执行

4、coutinue语句

  • 1、continue表示:继续/go on/下一个
  • 2、continue也是一个continue关键字加一个分号构成一个完整的单独的java语句,主要出现在循环语句当中来控制循环的执行
  • 3、break和continue的区别?
    • break表示循环不执行了
    • continue表示直接进入下一个循环继续执行

三、接受用户键盘的输入

第一步:java.util.Scanner s=new java.util.Scanner(System.in);

第二步:String str=s.next( ); 或者 int num =s.nextInt();

public static void main(String[] args) {
        //创建键盘扫描器对象
        //第一步
        java.util.Scanner s=new java.util.Scanner(System.in);

        //第二步:调用Scanner对象的next()方法开始接受用户键盘输入
        //程序执行到这里会停下来,等待用户输入
        //当用户输入的时候,并且最终敲回车键的时候,键入的信息会自动赋值给userInputContent
        String userInputContent =s.next();

        //接受数字【以整数型int的形式来接收】
        int num =s.nextInt();
        
        //将内存中的数据输出到控制台
        System.out.println("您输入了:"+userInputContent);
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

温欣2030

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值