A sample of Generics.

来源:互联网 发布:2015国产耽美网络剧 编辑:程序博客网 时间:2024/05/13 14:35

A Sample of Generics.

.net 2.0+C#+csc

 

using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;


public class TestGenerics<T>
{
   
private T t;
   
public T TTset{ t=value;}
    
get{return t;}}

   
}


public class Client
{
   
public static void Main()
   

          Console.WriteLine(
"The value of T is {0}:"new TestGenerics<int>().TT=124);
   }

}

 

编译运行。

 

 

在链表中使用范型。

 

 

using System;

public class Node<T>
{
   T value;
   Node
<T> next; 
   
   
public Node(T value)
   
{
       
this.value=value;
   }

   
   
public T Value
   
{
       
get
       
{
           
return this.value;
       }

       
set
       
{
           
this.value=value;
       }
 
   }

   
   
public Node<T> Next
   
{
       
get
       
{
           
return next;
       }

       
set
       
{
           next
=value;
       }

   }

}



public class List<T>
{
    Node
<T> root;
    
    
public List()
    
{
        root
=null;
    }


    
public void AddNode(T value)
    
{
         
if(root==null)
             root
=new Node<T>(value);
         
else
             
        
{ Node<T> newNode=new Node<T>(value);
         Node
<T> currentNode=root;
         root
=newNode;
         newNode.Next
=currentNode;}

    }

  
    
public void TraverseList()
    
{
        Node
<T> n=root;
        
while(n!=null)
        
{   
            Console.WriteLine(n.Value.ToString());
            n
=n.Next; 
        }


    }

  
  
    
public Node<T> Root
    
{
        
get
        
{
          
return root;
        }

    }

}


public class test
{
    
public static void Main(string []args)
    
{
        List
<int> l=new List<int>();
        l.AddNode(
10);
        l.AddNode(
11);
        l.TraverseList();

        List
<string> ls=new List<string>();
        ls.AddNode(
"a");
        ls.AddNode(
"b");
        ls.AddNode(
"c");
         ls.AddNode(
"d");
       ls.AddNode(
"e");
       ls.AddNode(
"f");
       ls.AddNode(
"g");
     ls.TraverseList();
 
    }

}

 

编译运行。