1。u3d list的命名空间:
using System.Collections.Generic;
代码:
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class BasicClass {
public int data;
public string name;
public BasicClass (){
}
public void setName(string name){
this.name = name;
}
public void setData(int data){
this.data = data;
}
//
public BasicClass(int mdata, string mname){
data = mdata;
name = mname;
}
}
public class start : MonoBehaviour {
int atemAmount=10;
List <BasicClass> classList;
// Use this for initialization
void Start () {
//c#的这一部很有意思,这个new可以理解成list的初始化。
classList = new List<BasicClass> ();
BasicClass classItem;
int i = 0;
for (i = 0; i < atemAmount; i++) {
//int data = atemAmount - i;
//string iString = i.ToString();
classItem = new BasicClass (atemAmount-i,i.ToString());
// classItem = new BasicClass (data,i.ToString);
//classItem = new BasicClass (atemAmount-i,iString);
// classItem = new BasicClass (data,iString);
//classItem = new BasicClass ();
classList.Add (classItem);
}
dumpList (classList);
//委托
classList.Sort (delegate (BasicClass b1, BasicClass b2) {
return b1.data.CompareTo (b2.data);
});
//lambda表达式
classList.Sort ((a, b) => a.data.CompareTo (b.data));
dumpList (classList);
}
void dumpList(List<BasicClass> list){
string bePrint = "dump list: ";
for (int i = 0; i < list.Count; i++) {
bePrint = bePrint + i.ToString() + "'s data" + list[i].name +"," + list[i].data.ToString() + "; ";
}
Debug.Log (bePrint );
}
// Update is called once per frame
void Update () {
}
}