我的Java之路——数据类型

数值类型

整数类型

byte占1个字节范围.
short 站2个字节范围.
int占4个字节范围.
long 占8个字节范围.

浮点类型

float占4个字节范围
double占8个字节范围

字符类型

char占2两个字节

布尔类型

占1位其值只有false和true。

八大基本数据类型

②引用类型 (reference)


引用类型包括:

1.类。

2.接口。

3.数组。


数据类型扩展

=======

1.整数扩展:进制


二进制0b,八进制0,十进制,十六进制0x。


2.浮点数扩展


注:float是离散,有限,舍入误差,大约,接近不等于

例:

我们可以看到的是0.1不等于0.1,c=c+1。

这个就和float有关了,即在上面强调float的特点。最后也总结出来一个道理:

最好完全避免使用浮点数进行比较!!!


3.字符拓展


所有的字符本质都是数字!!!

我们可以举例看一下:

把字符a强制转换为整数型,对应的数字是 97。这个是为什么呢?

答:在底层有一个Unicode编码:表(a:97,b:98…)每一个字符都对应有相应的数字!!!


4.转义字符


| 样式 | 含义 |

| — | — |

| \123 | 1~3位八进制数据所表示的字符,如\256 |

| \uF890 | 4位十六进制数据所表示的字符,如\u0014 |

| ’ | 单引号字符 |

| \ | 反斜杠字符 |

| \t | 水平制表符 |

| \v | 垂直制表符 |

| \r | 回车 |

| \n | 换行符 |

| \b | 退格 |

| \f | 换页 |

| \a | 响铃 |


类型转换

====

低————————————————————————————>高

byte,short,char ——>int ——>long——>float——>double

注:小数的优先级大于整数!!!

例:

int i = 128;

byte b = (byte)i;

//这个转换时有溢出

输出为-127(因为有溢出)

强制转换格式:(类型)变量名

强制转换是由高到低,自动转换是由低到高。

注意一些转换的情况!!!

不能对布尔值进行转换。
不能把类型转化为不相干的类型。
在把高容量转换到低容量的时候,强制转换。
转换的时候可能存在内存溢出或者精度问题。

JDK新特性


这个是我们补充的一个地方,下面的例子是可以用到的。

首先先介绍一下JDK的新特性:数字之间是可以用下划线分隔的,这样可以更清楚的分别位数!!!

int money = 1000000000;

int money1 = 10_0000_0000;

//两者是输出相同的

解决一些溢出问题


首先我们来看下面这段代码:

int money1 = 10_0000_0000;

int years = 20;

int total = money1 *years;

System.out.println(total);

我们来猜一下这个结果是200000000000还是什么呢?

读者福利

分享一份自己整理好的Java面试手册,还有一些面试题pdf

不要停下自己学习的脚步

字节跳动的面试分享,为了拿下这个offer鬼知道我经历了什么

字节跳动的面试分享,为了拿下这个offer鬼知道我经历了什么

码:

int money1 = 10_0000_0000;

int years = 20;

int total = money1 *years;

System.out.println(total);

我们来猜一下这个结果是200000000000还是什么呢?

读者福利

分享一份自己整理好的Java面试手册,还有一些面试题pdf

不要停下自己学习的脚步

[外链图片转存中…(img-AeRIgoii-1714708946932)]

[外链图片转存中…(img-fIcykUCd-1714708946932)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值