(转载)虚幻引擎3--【UnrealScript教程】章节一:9.array

数组
所谓数组,就是相同数据类型的元素按一定顺序排列的集合,就是把有限个类型相同的变量用一个名字命名,然后用编号区分他们的变量的集合,这个名字成为数组名,编号成为下标。组成数组的各个变量成为数组的分量,也称为数组的元素,有时也称为下标变量。数组是在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来的一种形式。这些按序排列的同类数据元素的集合称为数组。
 
每讲解一个数据类型前面我都会放一堆理论,感觉没什么用,最主要是知道是什么意思,会用,懂用。书本上会说一大堆理论,但是我就不说了,因为我都不太懂什么理论。
 
 
 
 
 
 
 
 
 
 
 
如果我们有一堆颜色,我要给每个颜色定义个颜色代号
var int color1;
var int color2;
var int color3;
又或者 var int color1,color2,color3;
我们定义它总不能一个个来吧?
如果我们用数组,可以直接用var int color[2];来表示以上3个
语法:
var 数据类型 数组名[下标];
 
我们试下在unrealscript里面定义个数组
Class MyUSGame extends actor
placeable;

var int color[3];

function postbeginplay()
{
`log("First:the color's values:"@color[0] @color[1] @color[2] );

输出3个0,所以数组如果不赋值默认都是0的。

为什么我不在输出语句后加 @color[3];

定义数组的时候 var in color[3] 的3 只是它的数组个数,不是说我们可以输出到下标个数3。
一维数组的排列长度好像如图所示


我们定义的确实有3个大小的数组,但他是从0开始排列的,所以0,1,2 就有3个了,到2结束
即我们输出数组的最后一个数组下标=定义数组的下标数-1 
<可以用.length方法取数组查看长度>

 
 
 
 
我们看下赋值会怎么样
function postbeginplay()
{
//`log("the color's values:"@color[0] @color[1] @color[2]);
color[0]=10;
color[1]=100;
color[2]=200;

`log("the color's values:"@color[0] @color[1] @color[2] @color[3] @color[4] @color[5] @color[6]);
}

输出了我们赋值的时候0,1,2的值。
此外,我们再增加了3,4,5,6这些数组进行打印输出,但是他们有没有值呢,这些都是出错的溢出的值。这些是没有用的。
 
posted @ 2016-11-26 17:11  星月相随  阅读(473)  评论(0编辑  收藏  举报