2011-09-15 139 views
0

我创建了一个存储两个元素的链接列表。有人可以告诉我如何访问第二个元素。在这种情况下,lastNameJava LinkedList访问第二个元素

这是我到目前为止。

public class Bank 
{ 
    private LinkedList<List> words = new LinkedList<List>(); 
    public void startup() 
    { 
    words.add(new List("Fred","Cool")); 
    } 

这是我的列表类

public class List 
{ 
    public List(String name, String lastName) 
    { 
    this.name = name; 
    this.lastName = lastName; 
} 
+0

嘿。你的'List'类坏了。仅供参考。 – mrkhrts

回答

3

你有很多的代码中的问题:

  1. 我建议你你的List类重命名为Person,作为该对象类型显然不代表名单。

  2. namelastName不会是列表的元素。它们是List(阅读Person)类的构造函数的参数。

  3. 您的List没有字段,所以你不能做

    this.name = name; 
    this.lastName = lastName; 
    

要访问的第二个元素在words列表,你做

words.get(1); // access second element (indecies are 0-based) 

然而,因为您只有添加了一个元素您将无法使用上述表达式。


这里有一个完整的例子,让你在正确的轨道上:

import java.util.LinkedList; 

class Bank { 
    private LinkedList<Person> persons = new LinkedList<Person>(); 

    public void startup() { 
     persons.add(new Person("Fred", "Cool")); 
    } 

    public LinkedList<Person> getPersonList() { 
     return persons; 
    } 
} 

class Person { 
    String name, lastName; 

    public Person(String name, String lastName) { 
     this.name = name; 
     this.lastName = lastName; 
    } 
} 

class Test { 
    public static void main(String[] args) { 
     Bank bank = new Bank(); 
     bank.startup(); 

     String lastNameOfFirstPerson = bank.getPersonList().get(0).lastName; 
     System.out.println(lastNameOfFirstPerson); // prints "Cool" 
    } 
} 
+0

谢谢,解决了我的问题。 – MathewS

+0

没问题,不客气。 – aioobe

0
words.get(index).lastName; 

这是假设该字段为accessable。

相关问题