c# collections linkedlist 链表的遍历
2016-11-15 21:40
330 查看
其实,一般来讲,遍历链表,就是要遍历链表的所有的节点,同时打印节点的值。但是,用foreach方法遍历链表的时候,遍历的直接是节点的值,而不是节点。这其实是c#里面做的不顺人思路的一面。语言毕竟是人开发的,只要是人,就会有各种的缺陷,会犯错误。虽然C#的开发者,我们认为他不是一般的智者。但是也没必要完全地盲目崇拜他,尽信他。
以下面的代码块为示例:
/*
* Created by SharpDevelop.
* User: Administrator
* Date: 2016/11/15
* Time: 21:13
*
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using System.Collections.Generic;
namespace LinkedListDemo
{
class Program {
public static void Main(string[] args)
{
LinkedList<char> myLink = new LinkedList<char>();
string str;
str = "abcdefghijkl";
foreach(char c in str)
myLink.AddLast(c);
foreach ( char mychar in myLink )//用数据类型遍历的,而不是用节点类型遍历的
Console.Write(mychar);
Console.WriteLine();
myLink.Remove('c');
foreach (char mychar in myLink)//用数据类型遍历的,而不是用节点类型遍历的
Console.Write(mychar);
Console.WriteLine();
Console.Write("Press any key to continue . . . ");
Console.ReadKey(true);
}
}
}
以下面的代码块为示例:
/*
* Created by SharpDevelop.
* User: Administrator
* Date: 2016/11/15
* Time: 21:13
*
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using System.Collections.Generic;
namespace LinkedListDemo
{
class Program {
public static void Main(string[] args)
{
LinkedList<char> myLink = new LinkedList<char>();
string str;
str = "abcdefghijkl";
foreach(char c in str)
myLink.AddLast(c);
foreach ( char mychar in myLink )//用数据类型遍历的,而不是用节点类型遍历的
Console.Write(mychar);
Console.WriteLine();
myLink.Remove('c');
foreach (char mychar in myLink)//用数据类型遍历的,而不是用节点类型遍历的
Console.Write(mychar);
Console.WriteLine();
Console.Write("Press any key to continue . . . ");
Console.ReadKey(true);
}
}
}
相关文章推荐
- C++ Linked list: Traversing a Linked list(遍历链表)
- 92. Reverse Linked List II【遍历一遍就反转链表】
- 【遍历二叉树】11把二叉树转换成前序遍历的链表【Flatten Binary Tree to Linked List】
- C#双向链表LinkedList排序实现方法
- C#中链表的用使用LinkedList
- C++实现单链表(Singly-Linked List)追加、遍历、删除
- c# 链表(LinkedList)使用
- 基于jdk的list 和 队列 linkedList 和父亲长子兄弟链表模型 实现的 树 的前序遍历,后序遍历和层次遍历
- C# 泛型类的实现,链表的封装LinkedListNode
- c# 链表(LinkedList)使用中的问题(.net framework 2.0)
- 链表的使用 (usage of Linked list)
- System.Collections.Generic.LinkedList 学习笔记
- 单链表与List<T>究竟哪个遍历速度快?
- c#利用链表模拟实现泛型集合List﹤T﹥
- 【数据结构与算法基础】单链表及其应用基数排序 / Singly Linked List and radix sort
- 反转单向链表(reverse a singly linked list)(单个反转) [# 7]
- 两两反转单向链表 (reverse a singly linked list in pair ) [#22]
- Java中LinkedList与ArrayList遍历速度比较
- .net集合类的研究--链表—ListDictionary,LinkedList<T>
- Java Collections Framework - Java集合框架之List篇 ArrayList与LinkedList等的性能比较