Java的变量与基本数据类型

变量与基本数据类型**

变量的概念:变量相当于内存中的一个储存空间的表示,变量是程序的基本组成部分,变量有三个基本要素(类型 + 名称 + 值)

数据类型

整数

byte(一个字节) short(两个字节) int(4个字节) long(8个字节)

默认为int类型,long后需要加上L/l

浮点数

浮点数=符号位 + 指数位 + 尾数位 尾数部分可能丢失(精度的损失)小数都是近似值

​ Java的浮点数也有固定长度和范围,不受具体的OS(操作系统影响)【float 4个字节 dou ble 8个字节

浮点数默认为double类型,float后面需要加上F/f

浮点数有两种表现格式:

​ **十进制形式:**5.12 512.0f .123(必须有小数点,且是double类型)

​ **科学计数法:**5.12e2【5.12的十的二次方】 5.12e-2【5.12/10的二次方】

浮点数陷阱:使用2.7和8.1/3比较

​ **细节:**如果是直接查询得到小数或者直接赋值,是可以判断相等

字符类型

字符常量用单引号(’ ') Java中允许使用转义符 ‘\’ 来将其后的字符转为特殊字符常量

​ **在Java中char的本质是一个整数,**在默认输出时,是Unicode码对应的字符,要输出对应的数字,可以(int)字符

char类型是可以进行运算的,相当于一个整数,因为它有对应的Uincode码

储存:‘a’ ==> 找到ASCII码 97 ==> 二进制 ==> 储存

读取:二进制 ==> 97 ===> ‘a’ => 显示

Java类的组成

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CGbwkBF6-1639992068842)(C:\Users\tao\AppData\Roaming\Typora\typora-user-images\image-20211202093229297.png)]

ASCII码的介绍

​ 上世纪60年代,美国制定的**一套字符编码(使用一个字节),对英文与二进制位之间的关系,做了统一规定,这被称为ASCII码。**ASCII码 一共规定了128个字符。总共位一个字节(256位)

缺点:不能表示所有的字符

Unicode编码介绍

Unicode优点:将世界上所有的符号都纳入到其中,每一个符号都有独一无二的编码,使用Unicode编码不会出现乱码问题

Unicode缺点:一个英文和汉字都是占用2个字节,对于储存来说是浪费

Unicode范围:2的16次方,所以最多编码65536字符

Unicode编码兼容ASCII编码:0~127字符与ASCII编码是一样的,比如 'a’在ASCII编码中是0x61,在unicode码中是0x0061,都是对 应97,Unicode兼容ASCII

UTF-8编码

1.UTF-8 是在互联网上使用最广的一种Unicode的实现方式(Unicode的一个改进)

2.UTF-8 是一种变长的编码方式。它可以使用1-6个字节表示一个符号,根据不同符号而变化字节长度。

3.使用 大小可变编程 字母占1个字节,汉字占3个字节

基本数据类型的转换

范围:小到大 char–>int–>long–>float–>double

byte–>short–>int–>long–>float–>double

细节1: 有多种数据类型混合运算时,系统会自动转换容量最大的那种数据类型,再进行计算

细节2: 小数据范围大到大数据范围,系统会自动转,大的转换小的,系统会报错,需要强制类型转换

细节3: byte、short和char之间不会进行相互转换

细节4: byte、short和char,三者都可以计算,在计算时首先转换成int类型

​ **细节5: **boolean类型不参与转换

细节6: 自动提升原则,表达式结果的类型自动提升为 操作中最大的类型

强制类型转换

​ ·当数据需要从大到小的时候,就需要强制类型转换

·强转符号只针对最近的操作数有效,往往需要小括号提升优先级

·char类型可以保存int的常量,但不能保存int的值,需要强转

·byte和short类型在进行运算时,会被当做int类型处理

String类型的转换

​ **·基本上就类型转为String语法:**将基本数据类型的值 + ""即可

​ **·String类型转换为基本数据类型:**通过基本类型的包装调用parseXX方法即可

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值