C#—Stack和Queue泛型使用
2016-04-15 17:09
375 查看
Stack泛型
/* * 引入命名空间System.Collections。使用.Net提供的泛型类Stack<T>,实现字符串或者数字的反序。 * */ using System; using System.Collections.Generic; using System.Collections; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Stack<string> st = new Stack<string>(); string s = Console.ReadLine(); char [] a = s.ToCharArray(); foreach (var item in a) { st.Push(item.ToString()); } while (st.Count>0) { Console.Write(st.Pop()); } Console.ReadKey(); } } }
运行结果:
Queue泛型
/* * 引入命名空间System.Collections。使用.Net提供的泛型类Queue<T>,实现字符串或者数字的反序。 * */ using System; using System.Collections.Generic; using System.Collections; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Queue<int> st = new Queue<int>(); int []a={0,2,3,4,5}; int sum = 0; foreach (var item in a) { st.Enqueue(item); } while (st.Count>0) { sum += st.Peek(); Console.Write(st.Dequeue()); } Console.WriteLine("\n出队元素之和为:{0}", sum); Console.ReadKey(); } } }
运行结果:
泛型约束
/* * 泛型约束应用实例 * */ using System; using System.Collections.Generic; using System.Collections; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { ArrayList ls = new ArrayList(); int []a={12,45,16,26}; ls.AddRange(a); MyClass.Sort<ArrayList>(ls); foreach(int item in ls) Console.WriteLine(item); Console.ReadKey(); } } class MyClass { public static void Sort<T>(T s) where T : ArrayList //泛型约束,T适合于ArrayList集合 { s.Sort(); } } }
运行结果:
注意:
where T :ArrayList 用where关键字来给Sort泛型方法添加了约束,约束了T类型的范围。
当返回T类型值时,用 return default(T); //通过default确定返回的是引用类型还是值类型。
相关文章推荐
- c#调用COM组件
- C#实现把指定数据写入串口
- C#动态创建button的方法
- C#中抽象方法与虚拟方法的区别
- c#中虚函数的相关使用方法
- C#实现给图片加水印的方法
- C#使用加边法计算行列式的值
- C#实现多线程的同步方法实例分析
- C#中尾递归的使用、优化及编译器优化
- C#中的delegate委托类型基本学习教程
- C#实现子窗体与父窗体通信方法实例总结
- C#通用邮件发送类分享
- 举例讲解C#中自动实现的属性
- C#中this的用法集锦
- C#数据结构之顺序表(SeqList)实例详解
- C#.NET获取拨号连接的宽带连接方法
- C#异步绑定数据实现方法
- C#实现AddRange为数组添加多个元素的方法
- C#中Equality和Identity浅析
- C#比较二个数组并找出相同或不同元素的方法