📄 program.cs
字号:
using System;
using System.Collections.Generic;
using System.Text;
namespace Mytest
{
//class Program
//{
// static void Main(string[] args)
// {
// // int is the type argument
// GenericList<int> list = new GenericList<int>();
// for (int x = 0; x < 10; x++)
// {
// list.AddHead(x);
// }
// foreach (int i in list)
// {
// System.Console.Write(i + " ");
// }
// System.Console.WriteLine("\nDone");
// System.Console.Read();
// }
//}
// type parameter T in angle brackets
public class GenericList<T>
{
// The nested class is also generic on T
private class Node
{
// T used in non-generic constructor
public Node(T t)
{
next = null;
data = t;
}
private Node next;
public Node Next
{
get { return next; }
set { next = value; }
}
// T as private member data type
private T data;
// T as return type of property
public T Data
{
get { return data; }
set { data = value; }
}
}
private Node head;
// constructor
public GenericList()
{
head = null;
}
// T as method parameter type:
public void AddHead(T t)
{
Node n = new Node(t);
n.Next = head;
head = n;
}
public IEnumerator<T> GetEnumerator()
{
Node current = head;
while (current != null)
{
yield return current.Data;
current = current.Next;
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -