00:01
好了同学们啊,那么接下来咱们继续再往下看啊,我们上节课呢,呃,主要是把这个这个数据类型这块啊,咱们把它说了说啊,字符型差整数型对吧,Bad short long,然后浮点型float double啊玻型玻璃,那么接下来呢,我们需要综合的看一看啊,综合的看一下,综合的看一下。就是在这个类型转换的时候啊,或者在类型转换的时候需要遵循哪些规则啊,在类型的时候。需要遵循哪些规则?各位啊。就是算总结一下,综合的看一下啊,在类型转换的需要遵循哪些规则是这样的,基本数据类型转换啊,它有六条规则,各位啊,你要把这六条规则给他记住。啊,这六条规则给他记住就行了,来,我们看一看。
01:01
这条规则是什么?来第一条。第一条各位啊,八种基本数据类型中,除布尔类型不能转换,剩下七种类型都可以进行转换。啊,这是第一条规则。就是八种基本数据类型当中,像bit short int long float double、布、Lin char,只有布尔类型,它不能参加转换,剩下的七个都可以啊,这是第一条规则。那么第二条规则是什么呢?第二条规则我们已经学过了。对吧,哎,已经学过了。说什么呢?说如果整数型字面量没有超出BAT short char的取值范围的话。
02:01
可以直接将其复制给BA short char类型的变量。啊,就相当于说差C等于100没问题对吧?BATB等于127没问题对吧?哎,Short等于哎等于111,诶没问题,这都可以直接赋值啊,没超范围可以直接赋值。然后第三条综合的看一下啊,第三条。这块呢,我来个换行了。第三条规则是什么呢?是小容量向大容量转换,称为自动类型转换。啊,这个我们课堂上也讲过,对吧,小的往大的就是小水杯里的水往大水杯里边倒,那是轻松啊,对吧,轻而易举。那容量从小到大的排序呢,大家要看啊,这个要背会,Bit小于short小于啊,Int小于什么呀?Long小于float小于double。
03:05
在这里我提过啊,呃,所有的整数型它的这个容量要都比浮点型要小啊,都比浮点型要小,这个呢,大家记住就行了,那么它的顺序是BAT short int long float double,那其中呢,我们这个char和short实际上它的容量是一样的。但是你要注意,差可以表示更大的正整数,因为我们差呢是字符,是文字,文字它没有正负之分,所以我们差它可以取到更大的正整数啊,虽然它们表示的数量相同啊。这是我们所说的第三条来看第四条,其实这些我们课堂上都讲了啊,在这里只不过呀,就验就再拿过来,拿过来之后呢,咱们再来总结总结啊,就是这个意思。综合性的总结一下,那第四条是什么呢?是大容量啊,转换成什么呀,小容量。
04:05
称为强制类型转换。强转编写时必须添加强制类型转换符,但运行时可能出现精度损失,谨慎使用啊,这是我们的第四条规则。这个呢是自动转,这个呢是强转。这个呢是说BA short差,可以不超范围,可以直接付,这个呢说的是不玩类型不能转,剩下七个都可以转。那么第五条规则,第五条规则是什么呢?是BAT上char类型混合运算的时候,先各自转换成int类型再做运算,这个我们课堂上也讲了。就bet上的差这三种类型,比如说在做混合运算的时候,它会先转换成什么呀?哎,一个先各自啊,BAT转成int short转成int char转成int,然后呢,我们再做运算啊,这是第五条,那么第六条,第六条规则是什么呢?是我们也接触过了各位啊,所以说这六条规则我们已经都学过了,第六条是多种数据类型,混合运算的时候各自。
05:05
先转成容量最大的那一种做运算。啊,好比我们在课堂上举的那个例子,有浪类型参加的对吧,那最后的计算结果就是浪类型啊,就是浪类型。那么这六条规则呢,希望下去之后呢,能够背会啊,就是所有的面试题,笔试题都超不超不过这六条规则啊。就所有的笔试题啊,都抄不出。以上的六条规则。啊。死记硬背。你也得给我背会了啊,你背会了行了,来咱们。不看的情况下,我们看看能不能说出来啊,各位第一条规则是什么呀。我们临时再建个文件啊,一会我删掉了啊。背会啊,第一条规则是什么呀?哎,大致写一写啊,不玩。
06:00
不能参与类型转换。是不是其他都行?第二个呢?没有什么超出short char的范围,可以这个整数啊,可以直接赋值。第三个呢,自动类型转换。是不是第四个呢,强制类型转换。是吧?第五个bit short差混合运算先各自转换成什么呀,Int。啊,再做运算。第六条是什么呢?是多种数据类型混合运算的时候。啊,各自先转换成容量最大的。那一种啊,再做运算。
07:00
所以这六条规则呢,希望大家能够给他背会了啊,自动类型转换,当然说我们小干什么呀,哎转成大,这个呢是大干什么呀,哎转成小,那大转成小需要加什么呀,强制类型转换符啊。小转成大,自动类型转换对吧?哎,Bit short in long float是不是,哎,Double,然后呢,我们这一块呢,哎,要注意short和我们差是平级的啊,这个大小关系要知道啊,所以说这六条规则呀,你能像我这样对吧,不依不依照啊不不参考任何资料,自己能在这默写出来是吧?诶这样就算是过关了啊好了,这个呢,我也就关掉了啊关掉了来这个文件呢,我也就删了,那么到此为止吧,咱们这个,嗯,关于我们这个数据类型这一块啊。
08:00
我们的内容就结束了啊,内容就结束了,最后呢,有一个综合性的一个,呃,这个总结啊,有一个类型之间的一个转换规则,希望各位能够把这条规则给它记住啊,那紧接着下面它有一道这个这样的题目,各位啊,我们一起来看看这个题目啊,一起来看一下,我就不再写了,各位啊,我就不再写了。咱们一起看看这个程序有没有什么问题,来各位这个行不行啊,这样吧,我们把这个代码拿出来啊,拿出来。这边有个例子啊。我们最后一个date。或者是。Transfer。转换类型转换。
09:01
然后后边有个test是吧。Public static voidman。那我们接下来呢,把这个代码拿一下,各位啊,这个代码,诶这个这个。有问题吗?这个来下边还有代码啊,我们看看下边这个代码,哎哟还挺多,我们把这个代码拿一下啊。拿一下之后呢,我们放到这儿。我们一块看一下。首先呢,我们先看第一个这个可以吗。这个应该是编译报错是吧。是不是变报错呀?啊。因为什么呀,因为1000怎么着已经超出什么范围了。是不是,哎,以前有超快文,这可以吗?这个可以吗?这个可以吧。哎,这个可以啊,BATB2等于20没超范围,那这边可以吗?Short s等于1000。
10:07
这也可以吧?啊,这是不是也可以啊,没超过范围嘛,是不是,那这个行不行啊,这个也可以吧,啊没有任何问题啊,1000。那这个行不行啊。C是什么类型啊?Int类型,Int类型能付给long类型吗?啊,这个可以啊,没问题。啊,这是B1B2,这是S,这是C啊,这是。然后接下来这个行不行啊。啊,你看我这确实是啊,像这种线上这块呢,在这这个没有互动啊,就没有什么效果啊,没有互动也没什么效果,呃,我反正就是在这自问自答啊,就挺尴尬的啊,确实挺尴尬,这一个教室里边一个人也没有。嗯。来行吧,就就这么地吧啊。我现在我我我都想把电脑直接摔地上,好,咱们继续啊继续,呃,这个其实讲线上也是我的一个挑战啊,之前我也很少就是在线上去讲课啊,一般呢,我这个一般都是面授啊,一般都是面授,呃也需要一个适应的过程啊,也需要一个适应的过程,行,那咱们继续啊,这个行不行呢?这个D是什么类型啊。
11:15
愣了一下。是吧,啊类型,那么类型赋给int类型行不行啊,这肯定是不行的,对吧?啊这个是编译报错啊,这个叫类型不兼容啊类型不兼容来,那下边这个行不行呢?十除以三这行吗。这可以吧,哎,这可以,因为十除以三等于几啊,等于三呗,是不是啊,那这个行啊,那这个行不行啊,哎,哪个不行啊,都都不行啊。十除以三行吗?啊,这是可以的啊,这个可以啊,这可以为啥这个可以啊,因为这int嘛,自动类型转换嘛,是不是来这个行不行啊,可以告告诉我G除以3G是浪类型。
12:08
行不行?那么这个G啊,它是浪类型三呢,它是int类型,类型和int类型做运算,最后是浪类型啊,浪类型是没有办法直接付给int类型的。编译报错。是不是好,那么再往下这个G除以三付给M行不行呢?这个M是个浪类型行吗?这可以吧,啊,这个是没问题的是不是啊,这个没问题,来继续往下,那大家看这个行不行呢。这个不行吧,因为这个呢,它有优先级,这个G呢,先转成BYT,你转完BYT之后啊,你除以几啊323是int对吧,那T呢和int最后运算完之后是int类型啊是int类型。In类型不能付给BAT啊,这是编译报错的。
13:01
那么到下边这个可以了吗?就是你整体预算完之后,不管你是多大对吧,总之八一转转成short行不行啊,这可以吧?啊,这可以short I等于十没问题,可以是不是?哎,Fat j等于五,这可以吗?可以啊,然后再往下short k等于I加J行不行啊。I是short,这是BATI加G行不行等于K?不行吧,这个编译报错吧。变异报错吧,是不是因为我们曾经有一个语法规则,这个规则怎么说的,说short和BAT做运算最后的结果是啥呀?Int类型,Int类型没有办法付给谁呀,Short类型,但是这直接写个十加五等于15,直接写个十五行,那没问题,因为你15呢,编译器检测出来了对不对,你15没超范围能直接付,但是如果说你I加J写上去的话,那这就不行了,因为I加J最后算完之后是多少,这个编译器是不知道,编辑器知道I加J啊,算完之后是个int类,没有办法付给S类型啊,所以这个是编译报错的,那么I加这付给int行不行呢?这个可以啊,这个没问题。然后这个呢是可以的啊,是差CC啊等于A字符,那没问题啊。
14:04
没问题啊,可以,这是个A字符,输出这个A字符有同学老师,这是啥玩意儿,这是来个双引号,完这又来个加号,这是啥东西?就当不存在啊,后期我们会讲,就今天吧,今天肯定会给大家讲啊,输出这个CC,那这个CC输出什么呢。这个CC肯定你是差类型是一个字符输出,输出的话,那肯定是什么呀,肯定是一个字符A对吧,你肯定会输出一个A对不对?好,那下边这个如果CC强转的转成BAT呢。那强转成BY,那这个是多少啊。叉类型转成BAT的数字,数字是多少啊,是不是就是97啊对吧,所以这个是97,那另外呢。这个结果CC会先自动转换成什么?Int类型。再做运算对吧,所以这个CC是97,那这样的话,输出这个O呢,应该是197吧。是好,那么这是一接,我们把这个程序va transfer test。
15:12
第四行十四二十。第四行。对吧,然后还有一个是第14行。对不对,还有一个第20行。还有一个第24行。啊,还有个32行,32行。对吧,啊,一共是一二三四五一共是五个错误啊,然后是一个是1234。五五个错误啊,那么接下来把这五个错误怎么着给它注释掉啊,这个注释掉对吧?哎,这个地方有问题注释掉,然这个呢注释掉啊,然后这个呢,我们注释掉啊,然后再往下这个呢,我们注释掉啊行了,那都注释掉之后呢,接下来我们再去编译这个就没问题了,是吧?没问题之后Java去运行,我们叫type transfer啊对吧?哎,Test走最后结果一个是A一个是91个一百九十七一个是A一个是九十七一个是197,那最后的这个例子呢,呃,其实就是简单测试一下啊,测试一下大家呢,上面这几条规则啊,对这几条规则呢,有一定的啊印象就行了,希望大家能够背会吧啊。
我来说两句