【问题标题】:How to print data which is inserted into linked list using linkedlist library of java如何使用java的linkedlist库打印插入到链表中的数据
【发布时间】:2009-03-09 07:07:03
【问题描述】:
class Collection 
{ 
    int sNo; 
    String sessionID; 
    int noOfDependency; 
    int noOfRejection; 
    int totalValue;

    Collection(int sNo, String sessionID, int noOfDependency, int noOfRejection, int totalValue)
    {
        this.sNo = sNo;
        this.sessionID = sessionID;
        this.noOfDependency = noOfDependency;
        this.noOfRejection = noOfRejection;
        this.totalValue = totalValue;
    }
}

public class DependencyStack {

    /** Creates a new instance of DependencyStack */

    public DependencyStack() 
    {
        LinkedList lList = new LinkedList();
        lList.add(new Collection(1,"a",0,0,0);
        lList.add(new Collection(2,"b",0,0,0));

        for(int i=0;i<lList.size();i++);
            System.out.println(lList.getFirst());
    }

我无法查看个人数据。例如如果我想查看所有 sno “序列号”,我该怎么做.. 我已经尝试了很多选项,请帮助...

【问题讨论】:

  • 我推荐一个可以纠正缩进的编辑器/IDE。

标签: java


【解决方案1】:

像上帝一样使用标准 API 库,嗯,我是说 Gosling 的意图。

说真的,这些已经被调整、优化和修正了一百多次——你不太可能做得更好。

事实上,java.util.LinkedList 已经有一个大小计数器。但 ArrayList 在大多数情况下更好(例外:如果您在遍历时经常需要删除元素)。

顺便说一句,500-1000 个元素是小菜一碟。没什么。你问这个问题所浪费的时间比你的程序运行 O(n) 实现一百万次还要多。

编辑:要在一个节点或列表槽中存储多条数据,请编写一个将您的数据作为字段的类(如果您愿意,可以通过 set 和 get 方法公开和公开)特别“干净”)并将该类的实例放入列表中。

【讨论】:

  • 嗯,我需要存储的信息包含1个节点下的多个信息,ArrayList是否可以......
  • 例如sno,name,address,phoneNo.. 都应该存储在 1 个节点下。是否可以使用数组列表,如果可以,请从示例程序中给我一个想法。
【解决方案2】:

您是否有不想使用内置类(如 List)的原因?

这些类会为您处理所有实现细节。看java.util.List

【讨论】:

  • List 是一个接口 - 那里没有实现细节。
【解决方案3】:

Java 的 LinkedList 类会在您添加/删除元素时跟踪大小。获取大小是免费的,您无需遍历列表。不用担心节点中有多个信息,只需将所有信息放在一个对象中即可。

我知道这是家庭作业,但你真的不应该看起来那么苛刻,并考虑发布一些代码来说明你的问题。我们不是让你为你工作。

【讨论】:

    【解决方案4】:
    System.out.println(lList.getFirst());
    

    lList.getFirst() 返回一个 Collection 类型的对象(顺便说一句,您应该使用更好的名称)。

    例如,您必须访问 lList.getFirst().getSerialNumber() (您还必须在 Collection 类中编写方法 getSerialNumber()...

    【讨论】:

    • 鉴于 Collection 类在同一个包中并且它的属性不是私有的,他不一定必须使用 get 方法(虽然它当然更干净)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-16
    相关资源
    最近更新 更多