1.2.2 Java变量与数据类型

1.变量

用一个名字如x,y,z等表示一个可能在不断变化的数值或者其他数据。 在java中我们把这个名字称之为变量名(标识符),名字所代表的内容称之为变量值。

此处有一个误区,不是数学计算必须创建变量,变量是为了做大量操作而应运而生的。

x=1;y=5;x+y 计算得6        这是通过变量存储计算

1+5同样可以计算出6        这是通过字面量计算

每一个变量可以理解成一个箱子。箱子里保存我们想要的数据。

2.数据类型

    在给变量申请存储空间时,如何表示这个存储空间的大小,数据保存时非0既1,如何表示存储空间的数据的维护规则?如果是数值,要考虑正负号还要能够数学计算,如果是小数还要考虑小数精度。那么使用一组特殊文字来表示,要申请的空间大小与存储规则。数据类型的概念就此产生。

Java中数据类型被分为两大类型:基本数据类型引用数据类型

基本数据类型底层保存的数据本身

引用数据类型底层保存的则是数据保存的地址,使用时可以通过该地址找到存储的数据。

注意,引用数据类型不等于引用传递,Java中只有值传递没有引用传递。(引用传递是C语言中的概念,将变量的地址传递给使用的地方。但是在Java中,虽然引用数据类型的变量的值保存得是地址,但依然是传递的变量的值,只不过值保存的是地址。其实这也是Java语言中没有指针概念的原因,引用数据类型存储的地址对标其他语言中的指针数据。Java中的指针数据不可数学运算,不可程序员自我指定,保障了内存访问的安全。)

基本数据类型(8种)

类型名称

内容

默认值存储空间
数值型double小数0.0d8
float小数0.0f4
long整数0l8
int整数04
short整数02
byte字符01
字符型char字符‘\u0000’2
布尔型boolean对错false1

引用数据类型:除了基本数据类型外任何数据类型都是引用数据类型

PS:存储空间:在计算机中不管怎样的数据最终都会用大量的1和0表示,我们称之为二进制。     每8个二进制数为一组,我们称之为字节。(一个字节占8位二进制)

3.数据类型转换:

不同的数据类型变量赋值时:

1、低精度的变量是隐式数据类型转换可以直接赋值到高精度变量

2、高精度的变量要强制类型转换赋值到低精度变量

        数据类型转换时导致数据的变化称为精度丢失,可能丢失取值范围也可能数值精度,自动数据类型转换不代表不会发生精度流失。最常见的是long类型自动转换为float或者double,但是精度可能会丢失。

强制类型转换:(要转换的数据类型)被转换的变量

例如:(int)b

精度排序为:byte->short/char->int->long->float->double

  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值