int[] float[](数组的创建) 02:43 a[3]=5;a=int[]{1,2,3,4};(数组的赋值) 05:51 String之间的加法(字符串连接) 05:11 != <= < == > >= ! & && | || ^ &= |= ^= (逻辑运算符) 25:26 System.Text.Encoding.Default.GetString GetBytes(文本与数组转换) ...
public struct ItemData { public string name; public int cost; public Vector3 position; } private ItemData[] itemData; 1. 2. 3. 4. 5. 6. 7. 我们可以将该struct拆分为多个数组的形式,从而减小GC的工作量: private string[] itemNames; private int[] itemCosts; private Vector3[] itemPositions...
2.string 修改 每次使用string的时候,都要在内存里面创建一个新的字符串对象,就需要为该对象分配新的空间。 特别在循环中需要修改string对象的时候,会频繁的分配新的空间。推荐使用StringBuilder.Append等 操作来处理。 3.gameObject.tag gameObject.tag会在内部循环调用对象分配的标签属性以及拷贝额外的内存,推荐使用 ga...
int idleHash = Animator.StringToHash("Idle"); animator.SetTrigger(idleHash); int colorId = Shader.PropertyToID("Color"); material.SetColor(colorId, Color.white); 缓存引用对象 例如我们常常会在游戏运行的时候去查找一些对象,GameObject.Find与其他所有关联的方法,需要遍历所有内存中的游戏对象以及组件,因...
publicstringStringExample(int[]array){string line=array[0].ToString();for(i=1;i<array.Length;i++)line+=", "+array[i].ToString();returnline;} 尽量减少函数调用栈。用x = (x > 0 ? x : -x);代替x = Mathf.Abs(x) 尽量不要在函数中新建Array或者List,而尽量采用传入Array或者List再进行...
List<int>list=newList<int>(128);int count=list.Count;int num=0;while(num<count){int num2=list[num];num++;} 缓存计数减少了属性访问的数量并使其更快。这个循环中的两个比较都不是由GC.Alloc,差异是由于实现的不同。 对于数组,foreach也进行了优化,与for中描述的相比几乎没有变化。
装箱:避免在引用类型变量的位置传递值类型变量。这会创建临时对象以及伴随它的潜在垃圾(例如,int.i.=.123;.object.o.=.i)隐式地将值类型转换为类型对象。 协程:尽管yield不会产生垃圾,但创建新的WaitForSeconds对象会产生垃圾。缓存和重复使用WaitForSeconds对象,而不是在yield行中创建它。
animator.SetTrigger("Idle");material.SetColor("Color",Color.white);//可以替换为:int idleHash=Animator.StringToHash("Idle");animator.SetTrigger(idleHash);int colorId=Shader.PropertyToID("Color");material.SetColor(colorId,Color.white); 5.避免Hierarchy的物体之间有很深的层级 ...
如int[])。数据的值类型在堆栈分配,除非他们的容器已经在堆上(如数组结构),例如基本类型(int,...
using UnityEngine;publicclassNewBehaviourScript:ScriptableObject{publicstring ItemName;publicint ItemLevel;publicTexture2D ItemIcon;} 64.编辑器播放时修改脚本后的处理 选择Edit > Preferences > General 命令,在Script Changes While Playing中,可以设置编辑器在播放状态下如果脚本发生改变后的处理,比如停止播放重新编...