Version: 5.3 (switch to 5.4b)
ЯзыкEnglish
  • C#
  • JS

Язык программирования

Выберите подходящий для вас язык программирования. Все примеры кода будут представлены на выбранном языке.

Предложить изменения

Успех!

Благодарим вас за то, что вы помогаете нам улучшить качество документации по Unity. Однако, мы не можем принять любой перевод. Мы проверяем каждый предложенный вами вариант перевода и принимаем его только если он соответствует оригиналу.

Закрыть

Ошибка внесения изменений

По определённым причинам предложенный вами перевод не может быть принят. Пожалуйста <a>попробуйте снова</a> через пару минут. И выражаем вам свою благодарность за то, что вы уделяете время, чтобы улучшить документацию по Unity.

Закрыть

Отменить

Руководство

Описание

Массивы позволяют хранить несколько объектов в одной переменной.

Тип Array доступен только в Javascript.

Вот базовый пример того, что вы можете сделать с классом массива:

function Start () {
	var arr = new Array ();

// Add one element arr.Push ("Hello"); // print the first element ("Hello") print(arr[0]);

// Resize the array arr.length = 2; // Assign "World" to the second element arr[1] = "World"; // iterate through the array for (var value : String in arr) { print(value); } }
The Array class is only available in Javascript.

Есть два типа массивов в Unity: встроенные массивы и обычные массивы Javascript. Встроенные массивы (нативные массивы .NET), очень быстрые и эффективные, но они не могут быть изменены

Они статически типизированы, что позволяет им редактироваться в инспекторе. Вот основной пример того, как можно использовать встроенные массивы:

// Exposes an float array in the inspector,
// which you can edit there.
var values : float[];

function Start () { // iterate through the array for (var value in values) { print(value); }

// Since we can't resize builtin arrays // we have to recreate the array to resize it values = new float[10];

// assign the second element values[1] = 5.0; }
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { // Exposes an float array in the inspector, which you can edit there. public float[] values; void Start() { foreach (float value in values) { print(value); }

// Since we can't resize builtin arrays // we have to recreate the array to resize it values = new float[10];

// assign the second element values[1] = 5.0F; } }

Встроенные массивы полезны в производительности критического кода (С Unity Javascript и встроенными массивами вы можете легко обрабатывать 2 миллиона вершин за одну секунду, используя mesh interface).

Обычные массивы Javascript, с другой стороны могут быть изменены, отсортированы и могут делать все другие операции, которые вы бы ожидали от класса массива. Массивы Javascript не отображаются в инспекторе. Вы можете легко конвертировать между массивами Javascript и встроенными массивами.

function Start () {
    var array = new Array (Vector3(0, 0, 0), Vector3(0, 0, 1));
    array.Push(Vector3(0, 0, 2));
    array.Push(Vector3(0, 0, 3));

// Copy the js array into a builtin array var builtinArray : Vector3[] = array.ToBuiltin(Vector3) as Vector3[]; // Assign the builtin array to a js Array var newarr = new Array (builtinArray); // newarr contains the same elements as array print (newarr); }
The Array class is only available in Javascript.

Note that Array's functions are upper case following Unity's naming convention. As a convenience for javascript users, Unity also accepts lower case functions for the array class.

Note: Unity doesn't support serialization of a List of Lists, nor an Array of Arrays.

Переменные

lengthСвойство длины массива, которое возвращает или задает число элементов в массиве.

Конструкторы

ArrayСоздает массив с фиксированной длиной.

Открытые функции

AddДобавить значение value в конец массива.
ClearОпустошить массив. Длина массива будет равна нулю.
ConcatОбъединить два и более массива
JoinОбъединяет содержимое массива в одну строку.
PopУдаляет последний элемент массива и возвращает его.
PushДобавить значение value в конец массива.
RemoveAtУдаляет элемент из index из массива.
ShiftУдаляет первый элемент массива и возвращает его.
SortСортирует все элементы массива.
UnshiftUnshift добавляет один или несколько элементов в начало массива и возвращает новую длину массива.