基础数据与计算(2)
基础数据与计算(2)
上次给大家介绍了一部分,这次给大家说一下剩下的那部分
常量
上次把整型说了这次说下剩下的
-
整型
-
浮点数
浮点数一般小数 ,浮点计算是指浮点数参与的运算,这种运算通常伴随着因为无法精确表示而进行的近似或舍入。
-
字符
字符就是由一个数字、字母、符号被单引号包含的数据
-
字符
字符串就是由一个或多个数字、字母、符号被双引号包含的数据
使我们最常用的一种常量类型 -
布尔
布尔很特殊,它只有两个值 一个是true 另一个是 false
这两个值表示的是真和假这两个概念
true false 这两个值其实也是是关键字的一种 ,但是他们表示确切的某个值。 -
空
什么是空?空就是什么都没有,用null表示。
变量
什么是变量,变量就是一些自身可以改变的的量
变量的本质
变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念。由于变量让你能够把程序中准备使用的每一段数据都赋给一个简短、易于记忆的名字,因此它们十分有用。
变量主要作用就是用于存储一些计算当中产生的一些临时性数据。
变量本质就是在内存当中某一个进程里的一个临时存储区域,每一个变量空间在创建的时候都会被随机的分配地址,这个地址是一个真实的物理内存地址,在变量空间中的数据在变化的过程中必须保持是可兼容的,如果直接在代码中用变量的物理地址去访问空间中的数据的话,就有可能访问不到。因此为了避免地址的不确定性,引入了变量名这个概念。 由变量名-地址表来保证变量名和变量之间的关系。其实 ,变量空间的地址 在C语言当中学的指针。
所有的常量都在常量池当中,变量空间当中存的就是常量在常量池中的地址!
数据类型
数据类型的分类
数据类型主要分为两类,一类叫基本数据类型,另一类叫引用数据类型
基本数据类型
-
整数
- byte:占1字节,他的具体范围 : -128~127
- short:占2字节,他的具体范围 :-32768~32767
-
int:占4字节,他的具体范围 :-231~231 - 1
整数常量默认是int类型 - long:占8字节,他的具体范围 :-2^63 ~ 2^63 - 1
整型之所以分为四类,原因是主要看我们数字的取值范围
-
浮点数
- float 4字节
-
double 8字节
浮点型常量默认是double类型
-
字符
- char 2字节,他的范围:0~65535这个范围指的就是字符的编号
-
布尔:boolean rue/false
在Java当中并没有给boolean一个明确的大小,主要和底层虚拟机相关
如果boolean是一个变量的话 1字节
如果boolean是一个数组的话 每个空间是4个字节
引用数据类型
-
字符串
由String引导的一串字符。也不存在具体的大小,它的大小是根据字符串的内容而决定的,字符串越长,越大。目前而言,可以像用基本类型一样去使用String类型数据。
String其实是java中自带的一个类
- null
-
数组
所谓数组,是有序的元素序列。 若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。用于区分数组的各个元素的数字编号称为下标。数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按无序的形式组织起来的一种形式。这些无序排列的同类数据元素的集合称为数组。 - 对象
如何定义变量
我们通常用“数据类型 变量名=常量”;
运算符
运算符有很多类:算术运算符,比较运算符,赋值运算符,逻辑运算符,三目运算符,位运算符。
-
算术运算符
- 加法运算
如果+号的两边都是数字的话,那么这个+表示的数学上的加法
如果+号的两边,只有有一个字符串,那么这个+表示的是字符串连接符
- 减法运算
- 乘法运算
- 除法运算
如果两边都是整数 结果就是整数(整除)
如果两边至少存在一个小数,结果就是小数 - % 取余运算
相当于是整除运算,但是得到的结果是余数 - ++ 自加运算
- 前++ ++i
i本身直接+1再参与运算 - 后++ i++
i先参与运算再本身+1
- 前++ ++i
- – 自减运算
- 加法运算
-
赋值运算符
+= ,-= ,*= ,/= ,%= ,= -
比较运算符
- 大于>
- 小于<
- 不小于>=
- 不大于>=
- 等于==
不管是在基本数据类型还是在后期面向对象 ==永远比的是两个变量(常量)当中所存储的那个数据的地址!
常量在常量池中的地址;对象在堆内存中的地址 - 不等于 !=
运算的结果肯定是一个boolean类型
-
逻辑运算符
-
与:同真则真,遇假则假
- 单 与 &
- 双与 &&
&&的话,左边一旦为假,右边无论真假,结果是假,所以右边可以不运行. -
或:有真则真,同假则假
* 单或 |
* 双或 ||
||的话,左边一旦为真,右边无论真假,结果都是真,所以右边可以不运行 -
非:非真就是假,非假就是真
! -
异或:相同为假,不同为真
^
-
与:同真则真,遇假则假
-
位运算符
指的就是二进制之间的运算有:& , | , ^ , >> , << -
三目运算符
一言以蔽之 变量=布尔表达式 ? 值1 : 值2;
布尔表达式的意思是,计算的结果必须是boolean类型
如果布尔表达式的结果是true,则将值1赋予变量
如果布尔表达式的结果是false,则将值2赋予变量
它在一定程度上简化了if语句的功能
今天就科普到这,下次再说,bye~