从零学Java(7)之数据类型,小AD竟然solo不过小朋友(1)

本文介绍了Java中的变量概念,重点讲解了数据类型(包括基本数据类型如整数、浮点数、字符和布尔型,以及引用数据类型),内存分配原理,以及基本数据类型和引用类型的区别。文章还提到了Java的强类型特点和面试中常见的算法与数据结构问题。
摘要由CSDN通过智能技术生成

变量就是申请内存来存储值。也就是说,当创建变量的时候,需要在内存中申请空间。

内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据。

在这里插入图片描述

数据类型分类

===================================================================


1.基本数据类型

2.引用数据类型


基本数据类型


基本数据类型分成4个小类型

1.整数型

2.浮点型

3.字符型

4.布尔型

整数型

| 类型 | 占用存储空间 | 范围 |

| — | — | — |

| byte | 1字节 | -128~127 |

| short | 2字节 | -215~215-1 |

| int | 4字节 | -231~231-1 |

| long | 8字节 | -264~264-1 |

举个例子

public static void main(String[] args) {

byte a = 100;

System.out.println(a);

}

♀ 小AD:哥,你这个byte a = 100;,啥意思,看不是太懂。

♂ 明世隐:这个是Java中定义一个变量的写法。

♀ 小AD:之前你没说过

♂ 明世隐:这个简单讲一下,下次再具体讲变量,byte表示类型,a表示变量名,= 就是直接赋值,8就是之前讲的字面量,也就是数据。

♀ 小AD:然后呢?

♂ 明世隐:就是说我定义了一个byte类型的变量a,并且给它设置了值,值为8。

♀ 小AD:好像明白,又好像不是太明白

♂ 明世隐:就比如说,有个装备叫铁剑,它的价格是250

♀ 小AD:那我明白了

♂ 明世隐:哦。。。有点扯,我不信

♀ 小AD:类型就是“攻击装备”,名称就是“铁剑的价格”,字面量就是 250。

♂ 明世隐:挖槽,你惊到我了,你果然是个游戏的小天才,我特么的服了,一说道游戏你就灵性起来了?

♀ 小AD:明哥指导的好!

♂ 明世隐:我可不敢当!

上述代码运行

在这里插入图片描述

如果修改代码

在这里插入图片描述

128不在范围 -128~127 内,超出了这个范围,所以会编译报错。

short、int、long也是类似了,其中 int 是最常用的。

浮点型

| 类型 | 占用存储空间 | 范围 |

| — | — | — |

| float | 4字节 | -231~231-1 |

| double | 8字节 | -263~263-1 |

字符型

| 类型 | 占用存储空间 | 范围 |

| — | — | — |

| char | 2字节 | 0~65535 |

布尔型

| 类型 | 占用存储空间 | 范围 |

| — | — | — |

| boolean | 1bit | true,false |

♀ 小AD:明哥,你说了那么多范围,我也记不住啊,这样记我不会呀

♂ 明世隐:你不需要记,我给你举个例子,就教一下你怎么配置铭文

♀ 小AD:好呀

♂ 明世隐:首先我问你,射手主要什么输出

♀ 小AD:平A物理系

♂ 明世隐:对,那攻速和暴击对射手来说比较重要吧

♀ 小AD:所以铭文也是要配置这个?

♂ 明世隐:攻速是肯定要的,所以推荐优先配置攻速、攻击、吸血、移速、暴击等铭文!大概就是红色无双、祸源,蓝色狩猎、夺萃,绿色鹰眼,具体怎么配,就不用我说了吧,自己学去。

在这里插入图片描述

♀ 小AD:那就是大概记住常用的,对应好英雄的属性就行了吧

♂ 明世隐:就是这个意思

♀ 小AD:那在Java中也要对应好类型呗。

♂ 明世隐:是的Java是强类型语言,如果类型指定的不对,报错的。

♀ 小AD:可是我记不住的

♂ 明世隐:不需要记住,首先常用的就是 int 和boolean,然后他们的类型你设置的错误,工具会提示你的。

♀ 小AD:哦

♂ 明世隐:不需要去记,你使用过几次就熟悉了,这就和你出装备一样的,小鲁班你出装备熟悉吧。

♀ 小AD:电刀、无尽、泣血等

♂ 明世隐:是的,用几次就明白了,举两个例子。

♀ 小AD:好的

例子1:

在这里插入图片描述

这boolean型的你设置100就肯定报错了。

在这里插入图片描述

这样就没毛病了。

例子2:

在这里插入图片描述

看报错信息就知道是类型不对。

引用数据类型


1.引用类型指向一个对象,指向对象的变量是引用变量。这些变量在声明时候被指定为一个特定的类型,声明之后不能改变。

2.引用数据类型包括:类(对象)、接口、数组。

3.所有引用类型默认值都是null。

4.一个引用变量可以用于引用任何与之兼容的类型。

两者的区别


1.从概念方面说 :

| 类型 | 区别 |

| — | — |

| 基本数据类型 | 变量名指向具体的数值。 |

| 引用类型 | 变量名不是指向具体的数值,

是指向存数据的内存地址。 |

2.从内存方面来说:

| 类型 | 区别 |

| :-- | :-- |

| 基本数据类型 | 被创建时,在栈内存中会被划分出一定的内存,并将

数值存储在该内存中。 |

| 引用数据类型 | 被创建时,首先会在栈内存中分配一块空间,然后

在堆内存中也会分配一块具体的空间用来存储数据

的具体信息,即hash值,然后由栈中引用指向堆中

的对象地址。 |

♀ 小AD:明哥,你说半天我没听懂

♂ 明世隐:那我问你,你在你家里面,你可以使用你的家,是不是?

♀ 小AD:那当然,我家我做主

♂ 明世隐:那你就类似基本引用类型,这家的区域就是给你划定的内存区域。

♀ 小AD:这样啊

♂ 明世隐:我如果有你家里的钥匙,我开门进去,我也可以使用你家的空间是不是,那我就是引用类型,就是说我不是直接拥有你家的使用权,我是有了你家的钥匙,我也就有了使用权,这样好理解吧?

♀ 小AD:好像有点明白了,不过你为啥会有我家的钥匙,你要干嘛明哥?不会吧不会吧,你不会有什么邪恶的想法吧。

♂ 明世隐:滚一边去,我就举个例子,你别做梦了。

♀ 小AD:那明哥,我有你的游戏账号、密码,这么说也可以看做是引用类型吧。

♂ 明世隐:差不多这个意思,就是说我手上拿着的账号密码,就类似引用类型指向内存地址。

♀ 小AD:那我把你铭文给融了。

♂ 明世隐:活腻歪了?

♀ 小AD:不皮了,我先去装一下铭文,再去找小朋友solo。

♂ 明世隐:再输别说你认识我

在这里插入图片描述

小结

===============================================================

这节学习了Java数据类型,希望能对大家有所帮助,请各位小伙伴帮忙 【点赞】+【收藏】+ 【评论区打卡】, 如果有兴趣跟小明哥一起学习Java的,【关注一波】不迷路哦。


相关阅读

=================================================================

1. Java俄罗斯方块

2. 老Java程序员花2天写了个连连看

3. 老Java程序员花一天时间写了个飞机大战

4. JavaWeb图书管理系统
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

结局:总结+分享

看完美团、字节、腾讯这三家的一二三面试问题,是不是感觉问的特别多,可能咱们真的又得开启面试造火箭、工作拧螺丝的模式去准备下一次的面试了。

开篇有提及我可是足足背下了Java互联网工程师面试1000题,多少还是有点用的呢,换汤不换药,不管面试官怎么问你,抓住本质即可!能读到此处的都是真爱

  • Java互联网工程师面试1000题

image.png

而且从上面三家来看,算法与数据结构是必备不可少的呀,因此我建议大家可以去刷刷这本左程云大佬著作的 《程序员代码面试指南 IT名企算法与数据结构题目最优解》,里面近200道真实出现过的经典代码面试题。

  • 程序员代码面试指南–IT名企算法与数据结构题目最优解

image.png

  • 其余像设计模式,建议可以看看下面这4份PDF(已经整理)

image.png

  • 更多的Java面试学习笔记如下,关于面试这一块,我额外细分出Java基础-中级-高级开发的面试+解析,以及调优笔记等等等。。。

image.png

以上所提及的全部Java面试学习的PDF及笔记,如若皆是你所需要的,那么都可发送给你!

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
…(img-ZShZnCcH-1713512855055)]

  • 其余像设计模式,建议可以看看下面这4份PDF(已经整理)

[外链图片转存中…(img-wZPOXOZB-1713512855056)]

  • 更多的Java面试学习笔记如下,关于面试这一块,我额外细分出Java基础-中级-高级开发的面试+解析,以及调优笔记等等等。。。

[外链图片转存中…(img-kj1EsFfH-1713512855056)]

以上所提及的全部Java面试学习的PDF及笔记,如若皆是你所需要的,那么都可发送给你!

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值