c# 泛型(Generic)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace 泛型
{
class Stack
{
private object[] items;
private int count;
public Stack(int size)
{
items = new object[size];
count = ;
}
public void Push(object x)
{
items[count++] = x;
}
public object Pop()
{
return items[--count];
}
}
class Program
{
static void Main(string[] args)
{
//Stack s = new Stack(10);
//s.Push(111);
//s.Push(222);
//Console.WriteLine((int)s.Pop() + (int)s.Pop()); //333
//Console.ReadKey(); //Stack s = new Stack(10);
//s.Push(111.3);
//s.Push(222.4);
//Console.WriteLine((double)s.Pop() + (double)s.Pop()); //333.7
//Console.ReadKey(); Stack s = new Stack();
s.Push("111.3");
s.Push("222.4");
Console.WriteLine((string)s.Pop() + " " + (string)s.Pop()); //222.4 111.3
Console.ReadKey();
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
//泛型(Generic)
//泛型是2.0版C#语言和公共语言运行库(CLR)中的一个新功能。泛型将类型参数的概念引入.NET Framework,
//类型参数使得设计如下类和方法成为可能:这些类和方法将一个或多个类型的指定推迟到客户端代码声明并
//实例化该类或方法的时候。列如,通过使用泛型类型到参数 T,您可以编写其他客户端代码能够使用的单个类,
//而不致引入运行时强制转换或装箱操作的成本或风险。
namespace 泛型1
{
class Stack<T>
{
private T[] items;
private int count;
public Stack(int size)
{
items = new T[size];
count = ;
}
public void Push(T x)
{
items[count++] = x;
}
public T Pop()
{
return items[--count];
}
}
class Program
{
static void Main(string[] args)
{
Stack<double> s = new Stack<double>();
s.Push(111.3);
s.Push(222.4);
Console.WriteLine((double)s.Pop() + (double)s.Pop()); //333.7
Console.ReadKey();
}
}
}
c# 泛型(Generic)的更多相关文章
- Java - 泛型 ( Generic )
Java - 泛型 ( Generic ) > 泛型的特点 > 解决元素存储的安全性问题 > 解决获取数据元素时,需要类型强转的问题 ...
- Java之集合初探(二)Iterator(迭代器),collections,打包/解包(装箱拆箱),泛型(Generic),comparable接口
Iterator(迭代器) 所有实现了Collection接口的容器都有一个iterator方法, 用来返回一个实现了Iterator接口的对象 Iterator对象称作迭代器, 用来方便的实现对容器 ...
- 谈一谈从 Delphi 2009 之后就支援的重要功能 – 泛型 (Generic)
前言 在C++的语言基础当中,除了物件导向.事件驱动的概念之外,模版设计(Template)也是非常重要的一环.然而,C++的开发人员能够善用模版设计的并不多.模版设计这个好物,一般还有一个名称,就是 ...
- JAVA中的泛型(Generic)
Java泛型(Generic)简介 泛型是jdk1.5版本以后推出来的,表示类型参数化,让java能更具有动态性一些,让类型能变成参数传递. 要我自己感觉的话,泛型本身没啥用,跟反射在一起用,就体现出 ...
- Dephi泛型generic的应用
Dephi泛型generic的应用 泛型在C++, C#中已有广泛应用,Delphi自2009版本也引入泛型,典型的应用如TList,TDictionary.如果你熟悉C#,其用法十分类似. 比如 ...
- Java基础之Comparable接口, Collections类,Iterator接口,泛型(Generic)
一.Comparable接口, Collections类 List的常用算法: sort(List); 排序,如果需要对自定义的类进行排序, 那就必须要让其实现Comparable接口, 实现比较两个 ...
- Java自学-集合框架 泛型Generic
ArrayList上使用泛型 步骤 1 : 泛型 Generic 不指定泛型的容器,可以存放任何类型的元素 指定了泛型的容器,只能存放指定类型的元素以及其子类 package property; pu ...
- C#泛型(Generic)
一.什么是泛型 泛型(Generic)是C#语言2.0.通用语言运行时(CLR)2.0..NET Framework2.0推出来的新特性. 泛型为.NET框架引入类型参数(Type Parameter ...
- .NET知识梳理——1.泛型Generic
1. 泛型Generic 1.1 引入泛型:延迟声明 泛型方法声明时,并未写死类型,在调用的时候再指定类型. 延迟声明:推迟一切可以推迟的. 1.2 如何声明和使用泛型 泛 ...
- C# 泛型Generic
泛型(Generic),是将不确定的类型预先定义下来的一种C#高级语法,我们在使用一个类,接口或者方法前,不知道用户将来传什么类型,或者我们写的类,接口或方法相同的代码可以服务不同的类型,就可以定义为 ...
随机推荐
- Python版***R设置后台自启动的方法
---恢复内容开始--- shadowsocks客户端中没有自带daemon的启动方法.需要通过自己的设置来实现自启动和后台管理. 在Ubuntu 15.04之后,systemd代替了upstart成 ...
- 对象中prototype与__proto__与从cinstructor的作用和区别
首先先要知道prototype什么时间才会有 只有在创建函数的时候,每当函数创建的时候才会原型prototype,还有一个constructor,这个不是函数独有的,对象也有 下面就来说说对象prot ...
- Linux Linux常用命令二
whoami 我是谁命令 --该命令用户查看当前系统当前账号的用户名 --由于系统管理员通常需要使用多种身份登录系统,李儒通常使用普通用户登录系统,然后再以su命令切换到root身份对系统进行灌篮.这 ...
- Photoshop脚本之创建文件夹
function checkFolder(path){ var folder = Folder(path) if(!folder.exists) folder.create() }
- LINQ 标准查询操作符
本文介绍了LINQ标准查询操作符.没有这些操作符,LINQ就不会存在.本文为理解这些操作符的功能提供了很好的基础.了解它们将会很有帮助,因为LINQ的各种Provider都是基于这些操作符来完成各自丰 ...
- SlidingMenu——使用前的配置
一: 首先下载lib:SlidingMenu.然后将起导入eclipse中,然后将其clean一下,重新生成R文件. 二: 因为SlidingMenu依赖ActionBarSherlock,所以需要下 ...
- knockout Ajax异步无刷新分页 Demo +mvc+bootstrap
最近工作中web客户端需要用到knockout,在此记录下一些Demo,以后用到的时候查找起来方便.也希望给新入门的knockout使用者一点经验.knockout官方文档.这儿是一个使用knocko ...
- Java快车读书笔记
办公自动化:OA 客户关系管理:CRM人力资源:HR 企业资源计划:ERP知识管理:KM 供应链管理:SCM企业设备管理系统:EAM 产品生命周期管理:PLM面向服务体系架构:SOA 商业智能:BI项 ...
- iOS --转载2018苹果$299美元企业级开发者账号申请攻略
前言篇 现在苹果企业级开发者账号申请十分严格,大部分企业都无法申请下来,本人尝试过多次申请,现将一些审核技巧分享出来,希望能帮到你们通过申请,需要帮助请看本文最后 2018年6月7号申请成功案例 ...
- Yii 2 的安装 之 踩坑历程
由于刚接触yii2 ,决定先装个试试:可是这一路安装差点整吐血,可能还是水平有限吧, 但还是想把这个过程分享出来,让遇到同样问题的同学有个小小的参考,好了言归正传!! <(~.~)> 下 ...