【问题标题】:list find all elements列表查找所有元素
【发布时间】:2015-10-27 21:43:57
【问题描述】:

我制作了一个哈希表(我认为不是很重要),我想打印出我的变量链表中的所有元素,插入顺序(它包含字符串,但没关系),我必须这样做,在我的方法我想返回insertionOrder,但不知道该怎么做,所以该方法获取所有元素,在我的课程程序中我想打印出insertionOrder,我找不到解决方案,谢谢!为什么我必须这样做?我的老师想要这样。我只是想知道您是否知道解决方案。谢谢!

class Hashtable
{
    private LinkedList<object> insertionOrder = new LinkedList<object>();
    .
    .
    public LinkedList<object> GetInsertionOrder()
    {
        return insertionOrder;
    }
}


class Program
{
    static void Main(string[] args)
    {
        Hashtable hT= new Hashtable(8);

        Console.Writeline("The elements: " + hT.insertionOrder());         
    }
}

【问题讨论】:

  • 为什么要使用 LinkedList?你想达到什么目的??
  • 我的老师想要这样。我只是想知道您是否知道解决方案。我有更多的代码,但我认为它现在不相关。但是应该是这样的,你可以随意修改。

标签: c# visual-studio


【解决方案1】:

一些事情;

insertionOrder 在主类之外被声明为私有,因此您无法从Main() 访问它。

insertionOrderHashtable 完全无关。我很惊讶您的 IDE 没有在 hT.insertionOrder() 调用中抛出错误,因为它无效。

试试这样的。

class Program
{
    private LinkedList<object> insertionOrder = new LinkedList<object>();

    static void Main(string[] args)
    {
        int count = 1;
        foreach (object o in insertionOrder)
        {
            Console.Writeline("The Element(" + count + "): " + o.ToString());
            count++;
        }
    }
}

【讨论】:

  • 我没有添加我所有的代码,我现在添加了一些代码
  • 好的,你试过编译你在这里给出的东西吗? insertionOrder() 不是 Hashtable 类可用的方法,它是一个字段,这意味着您可以像这样访问它:hT.insertionOrder。不过,这只是打印出对象定义。请添加 Hashtable 构造函数,也许您的预期输出是什么。
猜你喜欢
  • 2021-09-20
  • 2021-03-24
  • 2020-07-18
  • 1970-01-01
  • 2013-12-06
  • 2017-05-10
  • 2020-06-16
  • 2022-10-19
  • 1970-01-01
相关资源
最近更新 更多