第四天学习Java(运算符,表达式,控制台输入)

春暖有日,花开有时,相信所有事情,一定都会好起来!

1、运算符

        算术运算符:两个操作数进行计算


       算数运算符:一元运算符(只有一个操作数)


    i++和++i,都是给i进行加1运算

        执行结束后,i的值都会加1

        区别:过程不一样

        i++的值相当于i本身。执行之后。i给自己加了1,先计算,再加1

        ++i的值相当于i+1

    --:都是给变量自减1

        都是给i进行减1

        i--,相当于i本身。最终执行之后给i减1

        先计算,再减1

        --i:相当于i-1

        先减1,在计算



    赋值运算符:等号右边赋值给等号左边


        =:将=右侧的数值,赋值给=左边的变量

        +=:求和后在赋值: a+= 吧:相当于a = a+b



    关系运算符:两个操作数进行比较


    关系运算符:也叫比较运算符,比较两个数值的关系的,计算结果是Boolean类型

        >,<,>=,<=,==,!=

        ==:比较两个数值是否相等,如果相等,就是true,否则就是false

        !=:比较两个数值是否不等,如果不等,就是true,否则就是false


    逻辑运算符:两个Boolean类型的操作数或表达式进行逻辑运算


    逻辑运算符:操作数和计算结果都是Boolean类型的

    &&:与操作;(并且)

        运算规则,在整个计算过程中,如果有一个之为false。那么整个结果就是false,

        除非所有的值都是true,那么结果才为true

        结论:一假则假,全真才真。

    ||:或操作:

        运算规则:在这个计算过程中,如果有一个值为true,那么整体结果就为true

        除非所有的值都是false,那么结果才是false

        结论:一真则真,全假才假

    !:取非,也叫取反,一元运算符(操作数就一个)

        运算规则:原来是true,取反后就是false,原来是false,取反后就是true


三元运算符:将判断后的结果赋值给变量


    三元运算符:目的。根据条件,选择一种结果

        x?y:z

        x:布尔类型的表达式:true/false

        y:结果1

        z:结果2

        x的值为true,那么整个三元运算符的结果就是y

        x的值为false,那么整个三元运算符的结果就是z



2、表达式

    表达式

        使用运算连接符的变量或字面值,并可以得到一个最终结果

        例如:

        1+2

        int a = 3; a-2(表达式)

        自动类型提升

        进行算数运算时:

        两个操作数有一个为double,计算结果提升为double

        如果操作数中没有double,有一个为float,计算结果提升为float

        如果操作数中没有double,float,有一个为long,计算结果提升为long

        如果操作数中没有double,float,long,有一个为int,计算结果提升为int

        如果操作数中只有byte或者short,计算结果提升为int


特殊

    当+遇到String类型,起字符串拼接作用,最终的结果就是一个字符串String类型



控制台输入

        在程序运行中,可在控制台(终端)手动录入数据,再让程序继续运行

        导包语法:import 包名.类名://将外部class文件功能引入到自身文件中

    使用顺序

        导入Java.util.Scanner

        声明 Scanner类型的变量

        使用Scanner类中对应的函数(区分类型)

        .nextInt() //读取整数

        .nextDouble() //读取小数

        .next() //获取字符串

        .next().charAt(0); //获取单个字符

读取控制台上输入的数据


自我总结

    今天学习的内容比较新颖,但是也存在比较坑的地方,就是a++和++a的时候,确实是有点坑的地方,就比如今天的作业第一题,int a = 5;

int b = (a++) + (--a) + (++a);问最后b输出的是什么.我看完第一反应就是14,因为一直就急着a++等于a,就一直算的是5+4+5,但是我把程序运行一下,出来的却是16,我就纳闷了,后来仔细想了想,确实是我错了,首先,a++等于a没问题.也就是5是对的,但是a++执行完了之后,a的值不是5了,而是6了,所以--a就变成了5,a的值也变成了5,最后的++a也就变成了6,最后就是5+5+6,所以大家以后这里也要多注意注意.

你可能感兴趣的:(第四天学习Java(运算符,表达式,控制台输入))