c# collections linkedlist 链表的遍历

其实,一般来讲,遍历链表,就是要遍历链表的所有的节点,同时打印节点的值。但是,用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);
			 }
	                }
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章