问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

写一个MyArrayList类,重写List中的方法

发布网友 发布时间:2024-01-02 14:56

我来回答

1个回答

热心网友 时间:2024-06-13 05:03

import java.util.Arrays;

public class ListOfMy{
    private Object[] obj;
    private int num=0;
    
    public ListOfMy(){
        obj=new Object[0];
    }
    
    public int size(){
        return num;
    }
    public boolean isEmpty() {
        if(obj==null || obj.length<1){
            return true;
        }
        return false;
    }
    
    public boolean contains(Object element) {
        for(int i=0; i<obj.length; i++){
            if(obj[i].equals(element)){
                return true;
            }
        }
        return false;
    }
    
    public boolean add(Object element) {
        if(element!=null){
            num++;
            obj=Arrays.copyOf(obj, num);
            obj[num-1]=element;
            return true;
        }
        return false;
    }
    public boolean remove(Object element){
        boolean f=false;
        for(int i=0,j=0; i<obj.length; i++){
            if(!obj[i].equals(element)){
                obj[j++]=obj[i];
                f=true;
            }
        }
        if(f){
            obj=Arrays.copyOf(obj, --num);
        }
        return f;
    }
    
    public void clear() {
        obj=new Object[0];
        num=0;
    }
    
    public Object get(int index)throws Exception{
        if(index<0 || index>num){
            throw new Exception("index无效");
        }
        return obj[index];
    }
    
    public int set(int index, Object element)throws Exception{
        if(index<0 || index>num){
            throw new Exception("index无效");
        }
        obj[index]=element;
        return index;
    }
    
    public void insert(int index, Object element)throws Exception{
        if(index<0 || index>num){
            throw new Exception("index无效");
        }
        num++;
        obj=Arrays.copyOf(obj, num);
        for(int i=0; i<index; i++){
            obj[i]=obj[i];
        }
        for(int i=num-1; i>index; i--){
            obj[i]=obj[i-1];
        }
        obj[index]=element;
    }
    
    public Object remove(int index)throws Exception{
        if(index<0 || index>num){
            throw new Exception("index无效");
        }
        Object ob=null;
        for(int i=0, j=0;i<num;i++){
            if(i!=index){
                obj[j]=obj[i];
                j++;
            }else{
                ob=obj[i];
            }
        }
        if(null!=ob){
            obj=Arrays.copyOf(obj, --num);
        }
        return ob;
    }
    
    public int indexOf(Object element) {
        for(int i=0; i<obj.length; i++){
            if(obj[i].equals(element)){
                return i;
            }
        }
        return -1;
    }
    public String toString(){
        StringBuilder sb=new StringBuilder("[");
        for(int i=0; i<num; i++){
            if(i>0)sb.append(",");
            sb.append(obj[i]);
        }
        sb.append("]");
        return sb.toString();
    }
}


基本的,请参数,有不对的地方,请自己调试、修改

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果电脑电池充不进电苹果电脑充不进去电是怎么回事 苹果电脑不充电没反应苹果电脑充电指示灯不亮充不了电怎么办 狗狗更加忠诚护家、善解人意,养一只宠物陪伴自己,泰迪能长多大... 描写泰迪狗的外形和特点的句子 国外留学有用吗 花钱出国留学有用吗 !这叫什么号 百万医疗赔付后是否可以续保 前一年理赔过医疗险还能续保吗? 医疗住院险理赔后还能购买吗? 宁波单面瓦楞纸哪有卖(做包装用) 四川泸县经济开发区城西工业园属于哪个区 汉字的演变过程中,那些人做出了突出贡献?要具体! 我一个手机号注册了两个,另外一个登不上了,怎么办? 三岁孩子玩乐高有哪些好处和坏处? ...个微信后又注册了新的,旧的怎么找回? 四川奕林塑业有限公司电话是多少? 微信重新注册了,怎么找回以前那个? 弟弟成绩有些差,怎么办?学技术学个什么好? 男生说谁在私信你谁就是小狗女生怎么回 极氪汽车是国企吗 谁帮着翻译下“力求完美”谢谢[英文] ...家电产品的散件的,我想问一下,关于UL跌落测试标准,成品和零件都是通... 宝爸下厨炼制雪白猪板油!三斤猪板油能出一半油!常食用好处太多_百度... 胜似闲庭信步坐看云起落起时诗的下句是什么 胜似闲庭信步出处介绍_百度... 汉族的发展与演变的过程中,哪些人做出了突出贡献 上海话七吊八七什么意思 虎林离迎春有多远? 无情未必真豪杰,怜子如何不丈夫出处? 定频空调运行过程中,蒸发温度变化吗? 直挂云帆济沧海,上一句 看月亮的话,8倍和12倍差距大吗 报亭可以买邮票吗?寄明信片要用什么邮票? 新买的牛仔裤怎么有很大的双氧水味?能穿吗?对皮肤有害吗 iphone时间一时橙色一时正常 金融中什么叫做期货 求大神看看此款羽毛球拍价格 性能 以及各方面 怎么在微信群里看陌生人 老年骨肉瘤患者在手术化疗后出现白细胞下降的症状怎么办呢?_百度... 微信重新注册了,怎么找回以前那个? 微信重新注册了,怎么找回以前那个? 化学键断裂不是吸收能量吗,那为什么ATP中高能磷酸键断裂形成ADP是释放... 为何ATP中高能磷酸键断裂是释放能量而不是吸收能量 我不小心把电费卡掉水里了,请问还能用吗? 房价何时真正的能降下来呀,80后顶不住了 钓草鱼是钓浮好,还是钓底好? 我国大部分地区标准窗的尺寸均采用9m的扩大模数 轻松乐享生态摄影 索尼RX10M4评测 化学键断裂不是吸收能量吗,那为什么ATP中的高能磷酸键断裂时会释放能量... ...个微信后又注册了新的,旧的怎么找回?