C# 高级类型 dynamic,list,泛型(学习笔记5)
1. dynamic
.Net Framework4.0新特性,提供了一种弱类型语言特性。
定义的时候不需要指定类型,只在运行时检查,和var不一样。
/// <summary>
/// dynamic类型
/// </summary>
public void TestDynamic()
{
dynamic m = 10;
dynamic n = "hello";
m = n;
MessageBox.Show("Test"); // 显示 Test
}
2. list
/// <summary>
/// list类型
/// </summary>
public void TestList()
{
List<int> list = new List<int>();
//添加数据
list.Add(1);
list.Add(2);
list.Add(3);
list.Add(4);
list.Add(5);
// 删除数据
list.Remove(2); // 根据值=2来删除
list.RemoveAt(3); // 根据索引来删除,删除了5.
// 编辑数据
list[1] = 2;
// 查找数据
if (list.Contains(4))
{
MessageBox.Show("存在");
}
else
{
MessageBox.Show("不存在");
}
}
3. 泛型
使用场景:处理逻辑一样,只是传参类型不一样。
- 常规写法
/// <summary>
/// 整数加
/// </summary>
/// <param name="i"></param>
/// <param name="j"></param>
/// <returns></returns>
public int add(int i, int j)
{
return i + j;
}
/// <summary>
/// 双精度加
/// </summary>
/// <param name="i"></param>
/// <param name="j"></param>
/// <returns></returns>
public double add(double i, double j)
{
return i + j;
}
- 泛型写法
public T add<T>(T i, T j)
{
dynamic dynamicI = i;
dynamic dynamicJ = j;
return (T)(dynamicI + dynamicJ);
}
本文来自博客园,作者:huiy_小溪,转载请注明原文链接:https://www.cnblogs.com/huiy/p/19228467

浙公网安备 33010602011771号