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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

仿ArrayList功能的bag类

發(fā)布時(shí)間:2024/10/12 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 仿ArrayList功能的bag类 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

仿ArrayList功能的bag類(lèi)

要想做到能夠?qū)崿F(xiàn)ArrayList功能,首先要有一個(gè)能往里填任何類(lèi)型元素的的空間,但是不能用ArrayList來(lái)創(chuàng)建空間,這樣這個(gè)項(xiàng)目就沒(méi)有意義,因此,我創(chuàng)建了一個(gè)Object類(lèi)的數(shù)組,以此來(lái)作為元素的空間。

private Object[] myarray = new Object[5];

1、getCurrentSize():獲取數(shù)組中存放元素的個(gè)數(shù)

/*int 空的格子=0,有元素的格子=0for(遍歷一遍數(shù)組){if(元素為空){空格++}}有元素的格子=數(shù)組長(zhǎng)度-空的格子返回 有元素的格子*/@Overridepublic int getCurrentSize() {int emptyBlock=0;int having=0;for(int indedx=0;indedx<myarray.length;indedx++){if(myarray[indedx]==null){emptyBlock++;}}having = myarray.length-emptyBlock;return having;}

2、isEmpty():判斷數(shù)組是否為空

/*boolean 判斷int 空格數(shù)for(遍歷數(shù)組){if(數(shù)組的第i項(xiàng)為空{(diào)空格數(shù)++}}if(空格數(shù)==數(shù)組長(zhǎng)度){返回真}else{返回假}*/@Overridepublic boolean isEmpty() {boolean judge = true;int emptyTimes = 0;for (int i =0;i<myarray.length;i++){if(myarray[i]==null){emptyTimes++;}}if(emptyTimes == myarray.length){judge = true;}else{judge = false;}return judge;}

3、add(Object newEntrty):往數(shù)組中添加元素

/*for(遍歷數(shù)組){if(數(shù)組第i項(xiàng)為空){數(shù)組第i項(xiàng) = newEntry;停止循環(huán)}}* */@Overridepublic boolean add(Object newEntry) {for(int i=0;i<myarray.length;i++){if(myarray[i]==null){myarray[i]=newEntry;break;}}return true;}

4、remove(Object anEntry):移除數(shù)組中的指定元素

/*** for(遍歷數(shù)組){* if(數(shù)組第i項(xiàng) == anEntry){* 數(shù)組第i項(xiàng)變?yōu)榭? }* }*/@Overridepublic boolean remove(Object anEntry) {for(int i=0;i<myarray.length;i++){if(myarray[i]==anEntry){myarray[i]=null;}}return true;}

5、clear()將數(shù)組清空

/**for(遍歷數(shù)組){* 數(shù)組的每一項(xiàng)變?yōu)榭? }*/@Overridepublic void clear() {for(int index=0;index<myarray.length;index++){myarray[index] = null;}}

6、getFrequencyOf(Object anEntry):獲取數(shù)組中某元素的個(gè)數(shù)

/*** int 次數(shù)* for(遍歷數(shù)組){* if(數(shù)組第index項(xiàng) == anEntry){* 次數(shù)++* }* if(數(shù)組該元素為空){停止循環(huán)}* }*/@Overridepublic int getFrequencyOf(Object anEntry) {int times =0;for(int index=0;index<myarray.length;index++){if(myarray[index].equals(anEntry)){times++;}if(myarray[index] == null){break;}}return times;}

7、contains(Object anEntry):檢驗(yàn)?zāi)吃厥欠癜谶@數(shù)組中

/*** boolean 判斷* for(遍歷數(shù)組){* if(數(shù)組第index == anEntry){* 判斷為真* }* 停止循環(huán)* }*/@Overridepublic boolean contains(Object anEntry) {boolean judge = true;for(int index=0;index<myarray.length;index++){if (myarray[index]==anEntry){judge = true;}break;}return judge;}

代碼鏈接:

BagInterface.java

Bag.java

轉(zhuǎn)載于:https://www.cnblogs.com/VersionP1/p/7593077.html

總結(jié)

以上是生活随笔為你收集整理的仿ArrayList功能的bag类的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。