Java基础知识学习巩固2--int和Integer有什么区别及扩展
? ? 這8中數(shù)據(jù)類型可以,自動(dòng)轉(zhuǎn)換和強(qiáng)制轉(zhuǎn)換:
????????自動(dòng)轉(zhuǎn)換,自動(dòng)轉(zhuǎn)換時(shí)只能由低級(jí)向高級(jí)(byte;short;char->int->long->float->double;)
????? ? 強(qiáng)制轉(zhuǎn)換,即大位數(shù)轉(zhuǎn)換成小位數(shù).
????????????????????如 int a = 123; byte b = (byte)a;//此時(shí)需要強(qiáng)轉(zhuǎn) 不強(qiáng)轉(zhuǎn)會(huì)編譯報(bào)錯(cuò)
????? ? 以上基本類型只能賦予值。
二、引用數(shù)據(jù)類型,主要三種,分別是:
????? ? 1、類(Class)
????? ? 2、接口(interface)
????????3、數(shù)組
????????? ?我們最常用到的引用數(shù)據(jù)類型就是String類,通過(guò)源碼我們可以看到,實(shí)際上String存儲(chǔ)的字符串是以基本數(shù)據(jù)類型char的數(shù)組進(jìn)行存儲(chǔ)并創(chuàng)建對(duì)應(yīng)位數(shù)的。
????????? ?而我們的Integer就是引用類型,從所截圖的源碼中可以看出Integer是一個(gè)繼承了Number并實(shí)現(xiàn)?Comparable而構(gòu)造的類,其中提供了很多例如toString這樣的方法。
?? ? 還有Float與float,long與Long都同理。
三、總結(jié):
????? ? 從以上可以看出int和Integer的主要區(qū)別就是一個(gè)是基本類型,主要是值傳遞;一個(gè)是引用類型,即類,即是按值傳遞也是按引用傳遞。J
????? ? Java從5開(kāi)始引入自動(dòng)裝箱/拆箱機(jī)制,使得二者可以相互轉(zhuǎn)換,Integer對(duì)int這樣對(duì)基本類型進(jìn)行的裝箱使得開(kāi)發(fā)更加便捷。
????
總結(jié)
以上是生活随笔為你收集整理的Java基础知识学习巩固2--int和Integer有什么区别及扩展的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: java基础知识1---面向对象及fin
- 下一篇: Java基础学习巩固3--重载和重写分析