/// <summary> /// 获取数据节点 /// </summary> /// <typeparam name="T">数据节点类型</typeparam> /// <param name="t_Handler">查询委托</param> /// <returns>返回数据节点实例</returns> public BaseModule GetNode(Func <BaseModule, bool> t_Handler) { var t_ToList = m_SLinkedList.ToList(); //转换成System.List for (int i = 0; i < t_ToList.Count; i++) { if (t_Handler(t_ToList[i])) { return(t_ToList[i]); } } return(null); }
/// <summary> /// 获取数据节点 /// </summary> /// <typeparam name="T">数据节点类型</typeparam> /// <param name="t_Handler">查询委托</param> /// <returns>返回数据节点实例</returns> public IEventTopic GetNode(Func <IEventTopic, bool> t_Handler) { var t_ToList = m_SLinkedList.ToList(); //转换成System.List for (int i = 0; i < t_ToList.Count; i++) { if (t_Handler(t_ToList[i])) { return(t_ToList[i]); } } return(null); }
public void SLinkedListMustWork() { int n = 1000; Random rnd = new Random(); SLinkedList <int> mlist = new SLinkedList <int>(); int[] test1 = new int[n]; for (int i = 0; i < n; i++) { mlist.PushBack(rnd.Next(-20, 20)); test1[i] = mlist.Trailer.Value; } Assert.AreEqual(mlist.Size, n); Assert.AreEqual(test1[0], mlist.Header.Value); Assert.AreEqual(test1[n - 1], mlist.Trailer.Value); var test2 = mlist.ToList(); for (int i = 0; i < n; i++) { Assert.AreEqual(test1[i], test2[i]); } }