00:00
那这个说完以后,那接下来的话呢,我们就得看包装类,我们这呢主要讲什么内容,那我这呢放了好几页这个PPT,实际上呢,我们只需要关注最核心的一页PPT,就是它,我们呢讲包装类只需要做这个事儿,之前呢咱们都用的叫基本数据类型了,然后呢,咱们现在呢,知道基本数据类型对应的有个包装类,以后呢,大家用的时候呢,可以考虑呢,就是使用包装类了,那我们以前用基本书类型,那现在要用包装类,我们就得知道它们二者之间如何相互转换。这呢就是我们要关注的第一个问题,那同时的话呢,这个string咱们前面也讲过,和基本数据类型之间的一个运算,比如说咱们从这个控制台,我想获取一个123,这个123的话呢,看到是一个字符串,那我们想把它剥离出来呢,想变成这个123,这里就涉及到字符串转换成基本数据类型,那基本数据类型呢,现在又讲了个包装类,那就涉及到诶或者是转化成包装类型,那反过来呢,这个基本数据类型和或者是包装类怎么呢,转化成这个string,这也是咱们开发当中经常遇到的一些小问题。
01:01
所以这块呢,我们关于包装类的使用呢,就讲一个事儿,就是它们三者之间的相互转换啊,就是这三者之间的相互转换,我下边呢,放了一个这实际上这个图片,这个图片呢,我是之前做的,做了这样的一个这个Excel。就是把这里边这个Excel这个图给截过来了,在这里边呢,箭头呢,就是表示包装类呢,转换成string,这呢我就详细写了,都有哪些这个具体的方法,每一个呢都写了很多,但实际开发当中呢,大家用不着说诶我从他转到大有五种方法,咔咔咔都会用不着,你就哪个最好用,你就记住那一个就可以了。所以这块呢,我们把里边主要咱们爱用的一些方法呢,抽取出来给大家呢说一下,首先我们先谈一下基本数据类型和包装类之间,他们如何转化。那这块的话呢,我们就这个在这儿来说一下这个包装类的使用,它的一个test包装类的一个使用行,这块呢,我们简单写一下刚才说的这个事啊,就是Java呢,提供了提供了叫八种基本数据类型对应的这个包装类。
02:26
哎,使得使得什么呢?使得这个基本数据类型的变量。哎,这个又写错了,使得基本数据类型的变量呢,具有类的特征。哎,就是这样的话呢,我们把基本数据类型呢,就也包到咱们这个类的这一套面向对象的思想里了,这样那八种对的,这个我就不写了,大家把这个表格呢,记住它,这个表格记住它下边呢,我们重点需要大家掌握的就是基本数据类型包装类。
03:08
以及呢说string它们三者之间的相互转化。诶,这个呢是需要咱们掌握的,那咱们就一个个来说,咱们刚才呢也讲了单元测试方法了,那这呢我就建一个啊test public,哎,Word这呢我写一个test,先写个TEST1关于第一波的一个测试,此时的话呢,我们先来测试一下叫基本数据类型,它呢如何转换为对应的包装类,诶先来谈一下这个问题,这呢我们需要导一下包,那就倒一下。额外说一句,这个呢,咱们导的这个叫test,大家呢,自己写的时候,你就自己呢,别造一个类也叫test了。我造个类叫test,跟人家那个test是不是就重名了呀?对,别那样整有同学自己造类叫test,在这放的时候,诶怎么不给我提示import呀,你这就默认用你自己那个test了就。
04:08
所以呢,咱们开发中写测试可不会说造个类叫test,你想测什么你就写什么test这样做啊,那么在这里边我们先来看基本数类型怎么转换成包装类,这里边呢提到了我们叫调用,看这调用你对应的包装类的构造器,调用包装类的构造器,举例子来说明好。现在呢,我有个int型的,比如我叫一个NUMBER1,这呢这个数呢是十,你就是一个基本数据类型的变量,此时呢,你想说我这个NUMBER1,我想点一下to string,那就做梦了,就肯定不可以了,你是个基本数据类型,没有这个类的这样的一些方法啊,这个就不可以了,那你当然你当然你可以呢,把它先转换成个包装类啊,这呢我们就去new一个叫integer out斜杠,在这个构造器当中,我们可以把这个number in呢放进去啊,接下来我们就会生成一个integer的一个对象。
05:07
我叫IN1,这样,那么此时这个IN1就是把十包装起来的一个类的对象了,那此时呢,你再去说IN1,我想这个突一下,你看这时候就OK了,因为你现在是一个对象了,你看我这个点的时候呢,这个内容还是很丰富的。嗯,To词string一下,那么又由于呢,咱们这个记呢,它重写了to string方法了,它重它这个重写以后呢,就是输入它这里边的一个实体内容,实体内容其实就是存在十倍,所以打印出来结果呢,也就是十。挺简单的是吧。就这样来写就行,那这呢是我们直接来调构造器就可以了,那么构造器的话呢,大家也看到了,刚才我们调的时候呢,其实还有另外一个构造器,你看我拗一个叫integer al斜杠,这呢直接放这个int型的值就可以了,还可以放个string string,比如说我这样写个123,这也是OK的。
06:08
那此时呢,我们这个嗯,IN2啊,这你看点也都可以。那这时候呢,它其实就是把我们这个string中的这个数据呢,给他抽出来了,就是本质上也是一个123,也是个123,但是你写的时候你小心点,这个string的话呢,你别你别整那个AB123来个ABC这行吗。说我们呢,先把这个string这块呢,表示在这个,实际上你这个数啊,封装到我们这个当中,你这是不是不是纯粹的一个数了,对这个时候呢,我们要执行,这就出问题了。那你看这块这块你没看出,这是因为正确,前面这俩都正确出来了,这块看出来出错了,Number format数值呢,这个格式啊,这样的format格式化的时候呢,出问题了。
07:02
所以这个写法呢,大家要小心一点啊,就是如果呢,你要用这个string的行参的话呢,记得里边呢,得是纯粹的一个数,这样你才可以转,这呢就是报异常。行,这是这个问题,那么类似的我们换一个类,我这是一个float的,我叫F1了,我又一个float out斜杠,那类似的话呢,你看它这两个都有,写个浮点型的都可以,也放个盾也没问题,这你随便选一个就可以了,这里边呢,我写一个12.3可以吧。这相当于我们掉的呢,不就是一个double的吗?我要加上一个F调的呢,这就你这个float的,那这个呢,都没有问题,或者呢,我这写一个float f2等于new一个float,我这写一个双引号12.3。可以吧?能行吗?可以的,这都没有问题,输出一下。
08:02
F1,哎,相当于呢,我们省略了这个图磁针了。哎,那这都没有问题,这也是个绿条的OK的行,这呢是咱们说的这个,嗯,这个基本数据类型转化成对那个包装类啊,这里边呢,额外这个多说一句,就是关于这个布尔型,这个布尔型我这呢写一个叫B1,我new一个布尔,这里边的话呢,你按照我们上面这样的一个经验,奥特斜杠是不是也得传一个布尔型的呀,或者传个string的也可以了,正常你要布尔型,我这就写个出呗。这肯定可以吧,可以的,那我下边呢,你看我这时候换一个。这个我加上双引号,我这写个处是不是也可以啊。这没问题对吧,然后我这块呢,我写一个B3 B3呢,我写一个除123。
09:01
这时候呢,你要按照上面这个经验呢,似乎是不是可能要报错了。但是我们执行一下,你看它没有报错执行的这时候结果呢是个false。对,就是这块呢,需要额外的给大家稍微多说一句,就是上面这个呢,你要想把这个string呢,转化成我们这个包装类的话呢,你你你你这想转什么类型,就得是纯粹是个什么结构,而这个布尔这块呢,它进行过一个优化,你可以点开看这个源码。当大家呢,你感兴趣说这个为什么是这样子的时候呢,就可以看看源码,我们这个位置呢,写了一个触123。啊点开就是它,然后点这个,你这不是除123嘛,你看他说只要呢,你这个S不是一个no,不是no的时候呢,我们在忽略大小写的情况下呢,只要是处,那结果呢,就是个true,只要呢跟它不一样的。全都认为是false了,哎,这就明白了,言外之意呢,就是我们上面这个处,我这样写TE,这个B2是多少啊,对B2呢,也是个处,就是忽略大小写,你只要是长得跟处一样就行,是不是处吗?
10:20
能行吗?哎,这就说完了,这叫基本数据类型,转化成包装类呢,大家就调包装类的构造器就可以了啊,这是关于波尔型的,这个波尔行这块呢,确实还是比较特别的,这是一个点,就是再多说一句啊,多说一句,比如我这儿呢,我声明一个order。这是大家要关注的一个事儿了,原来咱们定一个类,我这里边儿如果是这样写的,我叫。这个这个is ma吧。我这样写的,这个时候我这儿呢,你一个order。哎。我用了order,这时候我去打印一下这个order点叫is ma,这个结果是多少?
11:06
放吧,因为我没有复活,值不就是默认值吗?这是false行,那现在的话呢,我改成用我都保留一下布尔型叫is female。Female female,这是一个示意吗?女性。诶,这个单词大家都不会写啊,Female是是是这样写吗?看着有点别扭啊。是是吧。然后呢,你说这个时候呢,我要是打印一下,这叫order.is female,这是多少。什么呀,还放啊,是不是这时候应该是闹了,因为人家现在已经是一个类了,地位高了,原来你是一个基本数据类型,现在人家是一个类不一样了,是一个布尔了,呃,布尔拉是个闹了,这个大家呢,要稍微的留意一下。
12:21
稍微留意一下,就是如果我们写程序的时候呢,呃,这个波尔类,这个基本数据类型呢,你判断一下说是不是出5FALSE,是不是默认值,呃,那到人家这个默认值的话呢,它是个no,稍微有点区别啊,就这么个事儿啊,行,那么基本数据型转化成对应的包装类,我们呢,就说清楚了。
我来说两句