实现一个自定义的ArrayList类,实现将原List中的每个数据都乘以10


1.首先自定义一个Operate接口,如下所示:

public interface Operate {
    public Integer caozuo(Integer i);
}
View Code

2.实现自定义的ArrayList类,即自定义MyArrayList类,如下:

import java.util.ArrayList;

public class MyArrayList {
    private ArrayList<Integer> list;
    private ArrayList<Integer> resultList;

    public MyArrayList(ArrayList<Integer> list) {
        this.list = list;
    }

    public ArrayList<Integer> map(Operate op){
        resultList = new ArrayList<Integer>();
        for(Integer i : list){
         resultList.add(op.caozuo(i));
        }
        return resultList;
    }

}
View Code

3.按正说还需要写一个实现Operate接口的类,但是我们这里可以使用匿名接口实现类,所以测试代码如下:

import java.util.ArrayList;

public class Test01 {
    public static void main(String[] args) {
        ArrayList<Integer> list = new ArrayList<Integer>();
        list.add(1);
        list.add(2);
        list.add(3);
        list.add(4);
        list.add(5);

        MyArrayList myList = new MyArrayList(list);

        ArrayList<Integer> map = myList.map(new Operate() {
            @Override
            public Integer caozuo(Integer i) {
                return i * 10;
            }
        });


        System.out.println(map);

    }
}
View Code

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM