Unity-泛型类和泛型方法

创建一个泛型类Value,一个方法getValue。创建一个int类型的Value对象,一个string类型的Value对象。使用getValue方法,他们分别返回int和string类型的值。
创建一个普通类Value2,一个泛型方法getValue。创建一个int类型的Value对象,使用getValue方法,他们分别返回int类型的值。
创建一个泛型类Value3,一个泛型方法getValue3。创建一个int类型的Value对象。使用string类型的getValue3方法,返回string类型的值。

//Unity-泛型类和泛型方法

//创建一个泛型类Value,一个方法getValue。创建一个int类型的Value对象,一个string类型的Value对象。使用getValue方法,他们分别返回int和string类型的值。
//创建一个普通类Value2,一个泛型方法getValue。创建一个int类型的Value对象,使用getValue方法,他们分别返回int类型的值。
//创建一个泛型类Value3,一个泛型方法getValue3。创建一个int类型的Value对象。使用string类型的getValue3方法,返回string类型的值。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Demo : MonoBehaviour
{
    void Start()
    {
        Value<int> fan = new Value<int>();
        Value<string> fan1 = new Value<string>();

        int myValue = fan.getValue(100);
        string myValue1 = fan1.getValue("200");

        Debug.Log("myValue = " + myValue);
        Debug.Log("myValue1 = " + myValue1);

        Value2 value2 = new Value2();
        int myValue2 = value2.getValue<int>(300);
        Debug.Log("myValue2 = " + myValue2);

        Value3<int> fan3 = new Value3<int>();
        string myValue3_1 = fan3.getValue2<string>("abc");
        string myValue3_2 = fan3.getValue3<string>("abc");

        Debug.Log("myValue3_1 = " + myValue3_1);
        Debug.Log("myValue3_2 = " + myValue3_2);

    }

}

//泛型类
public class Value<T> : MonoBehaviour
{
    public T getValue(T value)
    {
        return value;
    }
}

public class Value2 : MonoBehaviour
{
    //泛型方法
    public T getValue<T>(T value)
    {
        return value;
    }
}


//泛型类和泛型方法
public class Value3<T> : MonoBehaviour
{

    public T getValue(T value)
    {
        return value;
    }

    //不标准,此时方法的泛型类型getValue2<T>和类的Value3<T>可以不一样的,这里写getValue3<A>更合适,可以表示代表不同的含义
    public T getValue2<T>(T value)
    {
        return value;
    }

    //标准写法
    public A getValue3<A>(A value)
    {
        return value;
    }

}


在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值