泛型类定义
广泛类型的类
class ClassA<T> //Type int string double
{
private T a;
private T b;
public ClassA(T a, T b)
{
this.a = a;
this.b = b;
}
public T GetSum()
{
dynamic num1 = a; //dynamic 动态类型(可以是任意类型)
dynamic num2 = b;
dynamic result = num1 + num2;
return (T)result; //强制转换为类型 T
}
}
泛型类使用
//要指定类型
ClassA<int> a = new ClassA<int>(45, 65); //a为110
ClassA<double> b = new ClassA<double>(2.1, 3.1); //b为5.2
泛型方法
public static T GetSum<T>(T a, T b)
{
dynamic num1 = a;
dynamic num2 = b;
return (T)(num2 + num1);
}
泛型方法使用
GetSum<int>(20, 30) //结果为50
其它方法
//Equals 判断两个参数是否相等,会自动比对类型
bool flag = Equals(arg1, arg2)
//或者 arg1.Equals(arg2)
//判断字符串时会比较两个字符串的值,而不是引用,
//判断实例对象也会判断其值 但是等号会判断引用类型