[英]C# How do I run a Linked List's delete method from the main program?
I have a user-made linked list (no LINQ). 我有一个用户创建的链接列表(没有LINQ)。 I have items in them but I want to delete some. 我有项目,但我想删除一些。
The delete method of my Linked List: 我的链表的删除方法:
public void Delete(ListElem elem)
{
ListaElem helper = null;
ListaElem prev = null;
while (helper != elem)
{
prev = helper;
helper = helper.next;
}
prev.next = elem.next;
}
After this I want to delete a specific element from this List but how do I call it? 此后,我想从此列表中删除特定元素,但是我怎么称呼它呢?
Let's say your class is called CustomLinkedList
假设您的课程称为CustomLinkedList
At some point in your code, you have instantiated the class: 在代码的某个时刻,您已经实例化了该类:
CustomLinkedList myList = new CustomLinkedList();
Next, you've added some elements to it: 接下来,您向其中添加了一些元素:
ListElem elem1 = new ListElem();
myList.Add(elem1);
In order to delete an element, all you have to do is say: 为了删除一个元素,您要做的就是:
myList.Delete(elem1);
Now, what if you want to search the object for an element that has a certain field, perhaps a name? 现在,如果要在对象中搜索具有特定字段(也许是名称)的元素怎么办? You need another method, define it like this: 您需要另一个方法,像这样定义它:
public ListElem Find(String name){
// For every item in my list, look for one that has a name that matches.
}
Now you can find a particular item and then delete it. 现在,您可以找到一个特定的项目,然后将其删除。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.