日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

JavaSE—集合框架

發布時間:2025/7/14 java 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JavaSE—集合框架 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

聲明:本欄目所使用的素材都是凱哥學堂VIP學員所寫,學員有權匿名,對文章有最終解釋權;凱哥學堂旨在促進VIP學員互相學習的基礎上公開筆記。

集合框架:

System.arraycopy:
1.數組對象
2.從第幾個下表開始拷貝
3.接受的數組對象
4.從第幾個下表開始存放
5.要拷貝多長

使用System.arraycopy();拷貝方法,拷貝數組的參數,提高代碼的執行效率。

改善集合每次new對象問題,不要每次傳進參數都要new對象,所以我們在第一次創建對象數組時長度就為5,如果本次只傳4-5個數據的話那就不需要重新new數組。然后創建一個屬性index=0,然后objs[index++]=value;后加加,第一個值等于傳進來的val;
問一下現在的數組長度是否能存儲當前值,不能存儲的話就重新new一個數組,長度是原來數組的1.75倍,新數組創建完成后就拷貝老數組的數據,從老數組的第0個下表,拷貝給新數組,新數組的第0個放,老數組有多長就拷貝多長,拷貝完成后覆蓋老數組,讓屬性指向新數組。
然后objs[index++]=val;賦值。

get:用下表得到存放的數據,給一個下表判斷是否大于等于index(存儲下標后加加),大于就說明下標越界了。
size:數組存放數據的長度。反饋出去。

數組的刪除:數組的刪除就是覆蓋。
比如我們申請一個數組,數組里面有“A”,“B”,“C”“D”,“E”,“F”,“G”。
假設我們要刪除下標為3里面的數據,就猶如把“E”,“F”,“G”,復制一份粘貼在從 下標3開始的數組內。刪除最后一個就直接數組長度減減。

判斷下標是否越界,是越界的話直接拋出越界異常。
下標沒越界的情況下詢問它是不是要刪除最后一個,是刪除最后一個把該下標等于空。數組長度是7的話,減減后就是6,也就是數組對應的下標6,應為數組下標從0開始。(因為java在沒有內存地址指向引用的情況下才會回收內存)
刪除第一個的話,就是用System.arrycopy();老數組從下標第i+1個開始拷貝,拷貝給當前自己數組第i個(要刪除的位置),拷貝長度是老數組長度減去-i-1的長度。

測試:移除第一個。

縮存儲容器:請問當前objs.length/index>=3,符合的話就新申請一個數組,數組長度是來數組的2分之一,然后將老數組的第0個開始拷貝給新數組的0個,老數組有多長就放多長。(長度能被3整除刪除一半的數組長度)

轉載于:https://my.oschina.net/kaige123/blog/2052898

總結

以上是生活随笔為你收集整理的JavaSE—集合框架的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。