java - 在Java中实现CustomList的List接口(interface)

标签 java list interface custom-lists

我需要创建一个自定义列表来成对添加元素。我复制了一个类似的实现并根据需要进行了调整,但不幸的是,它不起作用。

class PairStringList implements List<String> {

    private List list;

    public PairStringList() {
        list = new ArrayList();
    }

    @Override
    public boolean add(String s) {
        list.add(list.size(), s);
        list.add(list.size(), s);
        return true;
    }

//other methods
}

到目前为止,我用这个来测试我的代码。

public static void main(String[] args) {
        List<String> list = new PairStringList();
        list.add("1");
        list.add("2");
        list.add("3");

        for(int i = 0; i < list.size(); i++) {
            String s = list.get(i);
            System.out.println(s);
        }

        list.add(4, "0");

        for(int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }
    }

问题是,当我调用 add 方法时,列表的大小按其应有的方式增加了 2,但没有添加任何内容,并且我得到一个充满空值的数组。

最佳答案

您必须在 PairStringList 中实现 get(int index) 方法。目前,您的 get 方法只是返回 nullget(int index) 方法的实现应如下所示:

@Override
public String get(int index) {
    return list.get(index);
}

关于java - 在Java中实现CustomList的List接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67848771/

相关文章:

java - Apache Felix 上的 OSGi 部署

java - 在 Kotlin Android Studio 中以整数形式获取一年中的日期

c# - 将 Point3D 列表转换为坐标数组

c# - 将对象转换为通用接口(interface)

Java 具有优先级队列的可比较对象

java - 创建 Blob 时出现运行时异常

java - Oracle SQL 偏移行数

c# - 使用 LINQ 从 List<T> 中删除元素

list - 将函数应用于列表中的每个第二个元素

C# : I have problem with createing implement interface object