气死我了,搜半天没有,全让序列化再反序列化,又不方便又不美观。结果自己试着一写就通,两行完事。

首先先安装Newtonsoft.Json 包,这个很常用也很简单,随便搜一下安上就行,早晚得学。

然后两行代码:

   public static T DeepCopy<T>(T DeepCopyObject)
    {
        string _ = JsonConvert.SerializeObject(DeepCopyObject);
        return JsonConvert.DeserializeObject<T>(_);
    }

 

成了

注意,我只实验了class里只有变量的class如下,带上方法的我还没试,懒得实验了,反正我够用了。

public class CreatureData
{
    public RangeType rangeType;//攻击类型(近战melee/远程remote/无攻击能力peace)
    public float moveSpeed;//移动速度
    public float HP;//生命
    public float HP_Max;//生命上限
    public float attackPower;//攻击力
    public float attackRange;//攻击范围
    public float attackSpeed;//攻击速度
    public DamageType damageType = DamageType.normal;//攻击类型,默认normal
    public float mass;//质量

}
public class CreatureDataList
{
    public List<CreatureData> creatureDataList;
}

 

内容来源于网络如有侵权请私信删除

文章来源: 博客园

原文链接: https://www.cnblogs.com/NxpWaitForLove/p/17114537.html

你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!