【问题标题】:Creating and adding items to a Linked List stored in an object创建项目并将其添加到存储在对象中的链接列表
【发布时间】:2015-11-24 02:52:39
【问题描述】:

我有一个邮政编码、城市和州的文件。我需要创建一个类来存储这些项目。这些对象将存储在二叉搜索树中,因此每个城市、州组合只需要一个条目。由于有些城市有多个邮政编码,我被要求将邮政编码存储在班级内的列表中。

基本结构:

public class Places(String city, String state, String zip){
  . . . 
}

我相信我需要在类中创建 LinkedList,然后也添加 zip,但是当我这样做时,我得到一个空指针异常。

//create new LinkedList in Place
      LinkedList<String> zips = new LinkedList<String>();
      zips.add(zip);

我发现了很多关于将对象添加到列表中的信息,但没有在对象中使用列表。

【问题讨论】:

  • 需要更多代码!我看不出上面的代码是如何导致NullPointerException 的。这可能会有所帮助:stackoverflow.com/questions/218384/…
  • 您显示的代码 sn-p 应该导致NullPointerException。你一定在做别的事情。
  • 会不会是zip 为空?你可以发布堆栈跟踪吗?
  • @dave 不会引发NullPointerException
  • @LuiggiMendoza 好的 - add() 可以提出NullPointerException。我认为ArrayList 允许null 元素,所以在这种情况下不会。

标签: java list class linked-list


【解决方案1】:

这应该可行:

 public class LocationData{
     //Somewhere in your code initiate it, maybe in constructor?
     public LinkedList<String> zips=new LinkedList<String>();
     //do the rest of what this class needs to do
  }

在另一个使用LocationData的类中:

  public class TestClass {
      //or any other method for that matter
      public static void main(String[] args) {
         LocationData ld=new LocationData();
         ld.zips.add("12345"); //adds zipcode of "12345"
        }
   }

NullPointerException 可以引发的唯一方法是 ldzips 未初始化。由于您没有发布完整的代码部分,因此我无法确切说明您的异常是在哪里引发的。

【讨论】:

  • 感谢大家的cmets。因此,文件中存在具有空值的 zip,因此链表引发了空指针异常。我将其更改为数组列表,并且效果很好。谢谢,珍
猜你喜欢
  • 2020-10-04
  • 1970-01-01
  • 2021-12-13
  • 2021-12-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-26
  • 1970-01-01
相关资源
最近更新 更多