一、基础知识
在数据类型中讲过
传送门:引用类型→数据类型C# 通俗易懂的介绍基础知识(三)——标识符、起名规范、引用类型_菌菌巧乐兹的博客-CSDN博客
二、一维数组
在数组之前,如果我们想存很多数据:
int a = 0;
int b = 0;
int c = 0;
但是:
问题一,如果我们有一百个,我们要写一百个吗?
问题二,如果我希望这些数字都+1,或者都-1,就很麻烦,因为本质上来说,这些数字之间,并没有什么联系。
这时候,数组出现了!
下面是建int数组:
int[] num;
//数组就是在你原本想要建的东西后面加个[]
//GameObject[] a;
//Transform[] t;
num = new int[100];
//100是说数组里有多少东西,这样电脑好给你留空间
这样我们就建了一个叫num的数组,里面的名字分别是num[0],num[1],,,,,,,num[99];
你可以给他们给值,比如
num[0]=10;
三、二维数组
我们见过的二维数组,最常见的就是在坐标new Vector2(1, 3);
下面是建int二维数组
int[,] num;
num = new int[2, 2];
把数字排成一个方队。
1 2 3 4
你想得到1,你就写num[0,0],想得到2,就写num[0,1],以此类推
四、字符串(string)
这个太常见了,我就略了~
String str = "你们好呀";
常用的方法:
Split('@')
//把所有有@的地方都砍一刀,然后把每段收起来返回成一个数组
ToLower()
//都改成小写
ToUpper()
//都改成大写
Trim()
//删掉前后的空格
五、结构体
使用场景:我们现在要做一个答题软件,题目都是选择题,都有四个选项,我要做50题,题目都写好以后,我希望,我能随机抽5道题。
在学结构体之前,我会选择:
string[] Question;
string[] Answers;
string[] Item;
建三个数组,然后把他们分别放进去。
但我也会幻想着,如果我能把他们放一起,该多好啊~
struct Question
{
public string problem;
public string[] item;
public string answer;
};
//用的时候和Vector3一样,直接用就行了
public class NewBehaviourScript : MonoBehaviour
{
Question[] question;
void Start()
{
question = new Question[50];
question[20].item = new string[5];
question[20].item[0] = "你猜猜";
}
}
虽然这样放到一起了,但是又出现了一个新问题,赋值有点麻烦,所以我们可以写一个方法给它赋值。
struct Question
{
public string problem;
public string[] item ;
public string answer;
public void setValues(string pro, string[] i, string an)
{
item =new string[i.Length];
problem = pro;
item = i;
answer = an;
}
};
然后就可以通过方法直接去赋值了。