課程
/后端開(kāi)發(fā)
/Java
/Java入門(mén)第二季
為什么要進(jìn)行類(lèi)型轉(zhuǎn)換呢?
2016-03-14
源自:Java入門(mén)第二季 10-2
正在回答
因?yàn)橛?jì)算機(jī)對(duì)不同的數(shù)據(jù)類(lèi)型有不同的保存方式,例如:int(整型) 類(lèi)型在32位計(jì)算機(jī)中,占4位。而double(雙精度)類(lèi)型在32位計(jì)算機(jī)中,占8位。當(dāng)高位轉(zhuǎn)向低位的時(shí)候,如果不進(jìn)行類(lèi)型轉(zhuǎn)換,就會(huì)造成數(shù)據(jù)溢出。為保護(hù)數(shù)據(jù)信息,需要進(jìn)行數(shù)據(jù)類(lèi)型轉(zhuǎn)換。
qq_岳飛_0 提問(wèn)者
對(duì)于Java來(lái)說(shuō),對(duì)象就是數(shù)據(jù)類(lèi)型準(zhǔn)確點(diǎn)說(shuō)就是結(jié)構(gòu)體名稱(chēng),父類(lèi)和子類(lèi)的關(guān)系就像是C中 double 和int 類(lèi)型 ,如果int 類(lèi)型轉(zhuǎn)換成 double 是可以直接轉(zhuǎn)換的 因?yàn)?dounle 占8個(gè)字節(jié),int 占 4個(gè)字節(jié) 是不會(huì)對(duì)double 數(shù)據(jù)造成不良影響的,相反 如果 double 類(lèi)型轉(zhuǎn)換成 int ?類(lèi)型就會(huì)造成數(shù)據(jù)的溢出,造成數(shù)據(jù)的丟失;而父類(lèi)的兩個(gè)子類(lèi) 就像是 代表兩個(gè) 結(jié)構(gòu)體,兩個(gè) 結(jié)構(gòu)體內(nèi)部的變量是不同的 ,因此代表不同的 數(shù)據(jù)類(lèi)型;Animal animal = dog;說(shuō)明了animal 是和dog 數(shù)據(jù)類(lèi)型相同的,如果要相 animal = cat 這就不行了,因?yàn)閍nimal已經(jīng)指向了dog類(lèi)型;而dog和cat 類(lèi)型優(yōu)勢(shì)不同的 所以 再次 animal = cat賦值就是不行的?
打個(gè)比方 ?你準(zhǔn)備買(mǎi)一百塊的東西 ,半路上改了主意 想買(mǎi)一個(gè)五塊錢(qián)的東西 ?找回95塊就是向下轉(zhuǎn)換 ?當(dāng)然你不找錢(qián)也行有錢(qián)嘛。相反 你只有五塊錢(qián) 但是想買(mǎi)一百塊的東西 怎么辦?只能強(qiáng)迫老板賣(mài)五塊錢(qián)啦!不喜勿噴
不同數(shù)據(jù)有不同數(shù)據(jù)的保存類(lèi)型。數(shù)據(jù)間的處理就需要不同的數(shù)據(jù)類(lèi)型。
有些是必須的有些事不必要的例如 double b=5.4;int ?a=b/3;這個(gè)編譯器就會(huì)報(bào)錯(cuò) ?這種情況是必須進(jìn)行轉(zhuǎn)化的
老師不是講過(guò) ?(大類(lèi)型轉(zhuǎn)化成小類(lèi)型即自下而上的容易出錯(cuò) 這個(gè)時(shí)候就需要強(qiáng)制 ?當(dāng)然有時(shí)候強(qiáng)制也會(huì)出錯(cuò))
而小類(lèi)型轉(zhuǎn)化成大類(lèi)型則不會(huì)出錯(cuò)即自上而下
舉報(bào)
課程升級(jí)!以終為始告別枯燥,在開(kāi)發(fā)和重構(gòu)中體會(huì)Java面向?qū)ο缶幊痰膴W妙
3 回答為什么要進(jìn)行引用類(lèi)型的轉(zhuǎn)換
2 回答無(wú)法進(jìn)行類(lèi)型轉(zhuǎn)換
1 回答何時(shí)進(jìn)行類(lèi)型轉(zhuǎn)換?
1 回答為什么Cat類(lèi)型無(wú)法轉(zhuǎn)換呢?
3 回答既然類(lèi)型相同了,為什么還要強(qiáng)制轉(zhuǎn)換成Dog類(lèi)型呢
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢(xún)優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2016-03-14
因?yàn)橛?jì)算機(jī)對(duì)不同的數(shù)據(jù)類(lèi)型有不同的保存方式,例如:int(整型) 類(lèi)型在32位計(jì)算機(jī)中,占4位。而double(雙精度)類(lèi)型在32位計(jì)算機(jī)中,占8位。當(dāng)高位轉(zhuǎn)向低位的時(shí)候,如果不進(jìn)行類(lèi)型轉(zhuǎn)換,就會(huì)造成數(shù)據(jù)溢出。為保護(hù)數(shù)據(jù)信息,需要進(jìn)行數(shù)據(jù)類(lèi)型轉(zhuǎn)換。
2016-05-23
對(duì)于Java來(lái)說(shuō),對(duì)象就是數(shù)據(jù)類(lèi)型準(zhǔn)確點(diǎn)說(shuō)就是結(jié)構(gòu)體名稱(chēng),父類(lèi)和子類(lèi)的關(guān)系就像是C中 double 和int 類(lèi)型 ,如果int 類(lèi)型轉(zhuǎn)換成 double 是可以直接轉(zhuǎn)換的 因?yàn)?dounle 占8個(gè)字節(jié),int 占 4個(gè)字節(jié) 是不會(huì)對(duì)double 數(shù)據(jù)造成不良影響的,相反 如果 double 類(lèi)型轉(zhuǎn)換成 int ?類(lèi)型就會(huì)造成數(shù)據(jù)的溢出,造成數(shù)據(jù)的丟失;而父類(lèi)的兩個(gè)子類(lèi) 就像是 代表兩個(gè) 結(jié)構(gòu)體,兩個(gè) 結(jié)構(gòu)體內(nèi)部的變量是不同的 ,因此代表不同的 數(shù)據(jù)類(lèi)型;Animal animal = dog;說(shuō)明了animal 是和dog 數(shù)據(jù)類(lèi)型相同的,如果要相 animal = cat 這就不行了,因?yàn)閍nimal已經(jīng)指向了dog類(lèi)型;而dog和cat 類(lèi)型優(yōu)勢(shì)不同的 所以 再次 animal = cat賦值就是不行的?
2016-03-31
打個(gè)比方 ?你準(zhǔn)備買(mǎi)一百塊的東西 ,半路上改了主意 想買(mǎi)一個(gè)五塊錢(qián)的東西 ?找回95塊就是向下轉(zhuǎn)換 ?當(dāng)然你不找錢(qián)也行有錢(qián)嘛。相反 你只有五塊錢(qián) 但是想買(mǎi)一百塊的東西 怎么辦?只能強(qiáng)迫老板賣(mài)五塊錢(qián)啦!不喜勿噴
2016-03-14
不同數(shù)據(jù)有不同數(shù)據(jù)的保存類(lèi)型。數(shù)據(jù)間的處理就需要不同的數(shù)據(jù)類(lèi)型。
2016-03-14
有些是必須的有些事不必要的例如 double b=5.4;int ?a=b/3;這個(gè)編譯器就會(huì)報(bào)錯(cuò) ?這種情況是必須進(jìn)行轉(zhuǎn)化的
老師不是講過(guò) ?(大類(lèi)型轉(zhuǎn)化成小類(lèi)型即自下而上的容易出錯(cuò) 這個(gè)時(shí)候就需要強(qiáng)制 ?當(dāng)然有時(shí)候強(qiáng)制也會(huì)出錯(cuò))
而小類(lèi)型轉(zhuǎn)化成大類(lèi)型則不會(huì)出錯(cuò)即自上而下