day02:变量,运算符 -> java基础大神进阶学习总结之19天(知识点全面覆盖,细节)

java基础总结

day02:变量,运算符

为啥要使用变量和数据类型?

变量

变量方便存储数据,减少常量的复用

表示存储空间,可用来存放某一类型的常量,没有固定值,并可以重复使用。变量是内存中一块区域,可以往该区域存储数据,修改里面的数据,也可以获取里面的数据。
在这里插入图片描述

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YMBBuCST-1596870013449)(img\图片 23.png)]

变量的特点:

  • 占据着内存中的某一块存储区域

  • 该区域有自己的名称(变量名)和类型(数据类型)

  • 可以被重复使用

  • 该区域的数据可以在同一类型范围内不断变化

数据类型

节省存储空间,提高系统运行效率,告诉jvm内存模型在内存中创建所需的内存大小

生活中,数据都是有类型这个概念的,比如张三18岁,18这个数字就是整型的,买了2.5斤菜,2.5就是小数类型的,在Java中每一个数据也有数据类型。
在这里插入图片描述

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TmFwYRuT-1596870013451)(img\图片 24.png)]

常用的整数类型是int和long,byte和short基本不用,常用的小数类型是double,float基本不用。因为double是不精确的,在实际开发中表示精确的小数我们使用BigDecimal类(后面学)。

运算符 ?

对常量和变量进行操作的符号称为运算符

常用运算符:

  • 算术运算符

  • 赋值运算符

  • 比较运算符

  • 逻辑运算符

  • 三元运算符

    逻辑运算符如下:
    在这里插入图片描述

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vNrSc8dc-1596870013453)(img\图片 36.png)]

规律:

  • 非:取反,!true则false,!false则true

  • 与:有false则false

  • 或:有true则true

  • 异或:^ 相同则false,不同则true

1. 自动类型提升

当一个算术表达式中,包含多个基本数据类型的常量或变量(boolean除外)时,整个算术表达式的结果类型将在出现自动提升,其规则是:

  • 所有的byte、short、char类型被自动提升到int类型,再参与运算

  • 整个表达式的最终结果类型,被提升到表达式中类型最高的类型

  • byte,char,short这三个类型一般不相互转化

  • 数据类型,自动转换的顺序如下:

    byte(1),char(2),short(2),int(4),long(8),float(4),double(8),boolean

    -128-127 -215-215-1 后面一样类似推理

2.强制类型转换

小类型 ->大类型—自动转换,大类型转 - > 小类型—强制转换

范围小的数据类型  变量 = (范围小的数据类型)范围大的数据类型值;

3.前置++,与后置++,以及a+=1和a=a+1的区别

++前置

先计算后赋值,a=10,++a=11,a=11

后置++

先赋值后计算, a=10, a++=10,a=11

总结:

两者的最终结果一样,只是表达式的值不同

重点:

​ a+=1和a=a+1的区别:

​ a为byte类型,a=a+1,大类型转化小类型报错

​ a为byte类型,a+=1,底层实现相当于:a=(byte)(a+1)

4.数据的默认类型

整数的默认类型为int,小数的默认类型为double

float a=1.0,1.0为默认类型double,大类型转小类型报错,修改为float a=1.0F

5.数据类型与变量产生的原因

为啥要有数据类型:节省内存空间,方便数据的存储

为啥要有变量:用于方便数据的存储,修改和获取,方便数据的重复使用,

6.&与&&,|与||的区别以及优势,^逻辑运算符的作用

&,左右两边不管对错都会执行

&&,如果左边为false,则不会判断右边,造成短路

|,左右两边不管对错都会执行

||,如果左边为true,则不会执行右边

&&,||相比于&,|优势:遇到复杂的逻辑运算时执行效率高,提高了数据的运算速度以及性能

^逻辑运算符的作用:当左右两边的结果相同时为flase,反之为true


猜你喜欢

转载自blog.csdn.net/weixin_41340417/article/details/107879934