一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第23天,点击查看活动详情。
哈喽,各位小伙伴们好,我是喵手。
今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流学习,互相学习,才能成长的更快,对吧。
我是一名java开发,所以日常接触到最多的就是java啦,所以我趁自己有空,就来好好回忆,把自己学到的会的,进行输出,不图什么有回报,只想能帮助到更多的小伙伴,就好。
小伙伴们在批阅的过程中,如果觉得文章不错,欢迎点赞、收藏、关注哦。三连即是对喵手我创作道路上最好的鼓励与支持!
一、前言
论前几期啊,我们是分别讲了Object类、Date类、FormDate类、Calendar类、System类及StringBuilder类,不知道大家掌握的如何,如果没有及时巩固的同学,可以看我这里,我给大家罗列了下,快速学习通道,只希望能帮助到大家更好的学习与成长,这就是我写作的初衷。
接下来,我要给大家讲一个新类了啊。虽然每天一期新类,但是我会尽量控制文章篇幅,让大家都有个很好的体验。如果不清楚,可以看看我接下来演示的,我会做到句句重点!绝不废话。
二、正文
1、什么是包装类?
说起概念,我们都知道,java提供了两种数据类型,基本类型与引用类型。然而使用基本类型是在于效率,但是在很多情况下,会创建其对象使用,因为对象才能做很多基本类型没有的功能,如果你想要基本类型像对象一样操作的话,那你就可以使用它对应的包装类。
2、包装类有哪些优点?
说起它,我可以给大家总结两点,仅供参考:
-
包装类可以提供很多方法使用,例如:数据可以转二进制,查看最大值最小值等等。
-
我们都知道集合中是不能存放基本数据类型,只能存放对象,所以当你使用集合时,我们的就需要使用到对应基本类型的包装类对象。
3、包装类有哪些?
这样你们就理解了基本类型与它的包装类之间的关系了吧。
其基本类型对应的包装类都位于 java.lang 包中。有空的小伙伴可以去扒扒源码。
-
byte:对应包装类为Byte
-
short:对应包装类为Short
-
int:对应包装类为Integer
-
long:对应包装类为Long
-
float:对应包装类为Float
-
double:对应包装类为Double
-
char:对应包装类为Character
-
boolean:对应包装类为Boolean
代码演示一下、这样你们就能看的更明白:
@Test
public void test() {
int a = 0;
System.out.println(a);
Integer b;//默认为null
b = 0;
System.out.println(b);
}
其中我们可以看到Integer类所提供了大量的操作函数。但基本类型是没有的。
三、装箱与拆箱
说到包装类,那就得提一嘴装箱与拆箱了。说白了,基本类型与包装类之间的互相转换的过程就被称为”装箱“与”拆箱“。
- 装箱:从基本类型转化成其对应的封装类的过程就叫装箱。
- 拆箱:从包装对象转换成其对应的基本类型的过程就叫拆箱。
这说的已经很好理解了吧!如果没理解,可以看下我如下例子,就以int与对应的Integer包装类为例吧,分别举例演示它两之间的装箱与拆箱过程。
演示代码如下:
@Test
public void test() {
//基本数值---->包装对象
//定义个int的包装类
int a = 100;
Integer b = Integer.valueOf(a);
System.out.println(b);
//包装对象---->基本数值
int c = b.intValue();
System.out.println(c);
}
控制台打印:
100
100
以上就是装箱与拆箱过程啦。不知道你们有没有看明白。
四、自动装箱与自动拆箱
由于我们在使用这些基本类型与包装类要手动,于是在jdk1.5开始,基本类型的装箱与包装类的拆箱动作就帮我们实现了自动转化,不再需要你手动装箱拆箱啦,非常方便。
举个例子:
@Test
public void test() {
//自动装箱,等价于:Integer a = Integer.valueOf(10)
Integer a = 10;
//自动拆箱,a+1等价于:i.intValue() + 1;
//加法运算完后,再次装箱,把int类型自动装箱成Integer。
a = a + 1;
}
不知道上方例子大家结合起来,能不能理解?
五、基本类型转换为String
这里还要提一嘴,基本类型转String,转化方式多种,但是我这里要讲一种最简单的转化方式。
基本类型你只需要在其后拼接一个 + ""即转成了字符串。
@Test
public void test() {
int a = 10;
//转String类型
String b = a + "";
System.out.println(b);
}
六、String转基本类型
这里呢,除了Character类之外,其他所有包装类都提供了parseXxx静态方法,其作用就是将字符串参数转换为对应的基本类型:
比如:
-
public static byte parseByte(String s) :将字符串参数转换为byte基本类型。
-
public static int parseInt(String s) :将字符串参数转换为int基本类型。
-
public static double parseDouble(String s) :将字符串参数转换为double基本类型。
...
接下来我就简单举个实例演示一下吧。
演示代码如下:
@Test
public void test() {
int a = Integer.parseInt("100");
System.out.println(a);
double b = Double.parseDouble("100.1");
System.out.println(b);
}
控制台打印:
100
100.1
... ...
好啦,以上就是对应java-包装类的所有教学内容啦,如果对文中的任何知识点有疑问,欢迎评论区评论留言呀,我看见都会一一解答的。
七、结尾
教学是结束了,但是有些话不知我但讲不当讲,啊哈哈, 可我还是想说给你们听听。如下是我很喜欢的一句话,我打算送给你们,希望我们都能变得更好更优秀。
学习不分先后,知识不分多少;事无巨细,当以虚心求教;三人行,必有我师焉!!!
wished for you successed !!!
-------------------------------------------
⭐️若喜欢我,就请关注我叭。
⭐️若对您有用,就请点赞叭。
⭐️若有疑问,就请评论留言告诉我叭。
-------------------------------------------