如何比较LinkedList值与其父对象?

时间:2013-07-19 05:36:26

标签: java

如何通过比较获取我添加到linkedList的对象的索引?以下代码将阐述我的问题。 (我已经展示了一个虚拟的linkList函数来解释这个问题)

    LinkedList<String> list = new LinkedList<String>();
    for(int i = 0; i < 10; i++) {
        String j = "HELLO";
        list.add(j);
        System.out.println(list.findOccurrenceOfCurrentItemInList(j) + ""); // should display the value of i
    }

2 个答案:

答案 0 :(得分:3)

好的,如果你需要参考比较,你必须使用类似的东西:(未经测试)

static <T> int indexOfRef(Iterable<T> src, T value) {
    int i = 0;
    for (T it : src) {
        if (it == value)
            return i;
        ++i;
    }
    return -1;
}

为了以相反的顺序进行,请创建从头到尾的迭代器,并相应地更改计数器。

请注意,在LinkedList中,您找不到比O(n)(线性搜索)更快的元素,List<T>实现Iterable<T>,因此您可以免费获得与其他类型的兼容性。

答案 1 :(得分:2)

public class Test {

public static void main(String args[])
{
    LinkedList<String> dataList = new LinkedList<String>();
    for(int i=0;i < 5;i++)
    {
        dataList.add("test"+i);
    }

    System.out.println(dataList.indexOf("test3"));

}

}

我希望它会对你有帮助.....