java零基础入门-包装类

278 阅读6分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 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 !!!

-------------------------------------------

⭐️若喜欢我,就请关注我叭。

⭐️若对您有用,就请点赞叭。

⭐️若有疑问,就请评论留言告诉我叭。

-------------------------------------------