更新時(shí)間:2020-09-18 17:28:13 來源:動(dòng)力節(jié)點(diǎn) 瀏覽3216次
相信有java程序員崗位面試經(jīng)歷的朋友們,都知道在面試中的java面試題考察的是基礎(chǔ)知識(shí),各大公司也越來越重視面試者是否有扎實(shí)的java基本功。Java數(shù)組就屬于基礎(chǔ)知識(shí),java數(shù)組拷貝4種方式是其中的重點(diǎn)學(xué)習(xí)內(nèi)容之一,下面就為大家總結(jié)好了java數(shù)組拷貝4種方式的知識(shí)點(diǎn),趕緊來學(xué)習(xí)吧!
Java數(shù)組是什么呢,還是先帶著java零基礎(chǔ)的新手們來復(fù)習(xí)一下:數(shù)組是一種數(shù)據(jù)結(jié)構(gòu),用來存儲(chǔ)同一類型值的集合。通過一個(gè)整型下標(biāo)可以訪問數(shù)組中的每一個(gè)值。數(shù)組的使用能為程序的編寫提供十分的便捷,在復(fù)雜的程序編寫中不可能離得開數(shù)組,所以數(shù)組的使用時(shí)十分重要的。
Java數(shù)組拷貝4種方式如下:
1、clone方法
clone方法是從Object類繼承過來的,java數(shù)據(jù)類型(int ,boolean,char,byte,short,float ,double,long)都可以直接使用clone方法進(jìn)行克隆,注意String類型是因?yàn)槠渲挡豢勺兯圆趴梢允褂谩?/p>
舉其中一個(gè)數(shù)據(jù)類型的例子——int數(shù)據(jù)示例:
2、System.arraycopy方法
System.arraycopy方法是一個(gè)本地的方法,源碼里定義如下:
public static native void arraycopy(Object src, int srcPos, Object dest, int desPos, int length)
其參數(shù)含義為:(原數(shù)組, 原數(shù)組的開始位置, 目標(biāo)數(shù)組, 目標(biāo)數(shù)組的開始位置, 拷貝個(gè)數(shù))
這個(gè)java數(shù)組拷貝方式也有示例,如下:
3、Arrays.copyOf
Arrays.copyOf的java數(shù)組拷貝方式的底層其實(shí)也是用的System.arraycopy源碼如下:
使用該方法進(jìn)行java數(shù)組拷貝無需我們事先使用new關(guān)鍵字對(duì)對(duì)象進(jìn)行內(nèi)存單元的分配。
4、Arrays.copyOfRange
Arrays.copyOfRange底層其實(shí)也是用的System.arraycopy,只不過封裝了一個(gè)方法。
最后需要注意的是基本類型的拷貝是不影響原數(shù)組的值的,如果是引用類型,就不能在這用了,因?yàn)閿?shù)組的拷貝是淺拷貝,對(duì)于基本類型可以,對(duì)于引用類型是不適合的。
希望大家好好學(xué)習(xí)上面的內(nèi)容,掌握好這篇文章中java數(shù)組拷貝4種方式。另外還可以在學(xué)完這篇文章的知識(shí)后,在java視頻教程中獲取并學(xué)習(xí)更多的java數(shù)組拷貝以及編程的內(nèi)容,提高自己的java水平。
相關(guān)閱讀
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問老師會(huì)電話與您溝通安排學(xué)習(xí)
初級(jí) 202925
初級(jí) 203221
初級(jí) 202629
初級(jí) 203743