Pakiet | Najwyższy poziom |
Klasa | public dynamic class Vector |
Dziedziczenie | Vector Object |
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Tak jak w przypadku klasy Array, można użyć operatora dostępu do tablicy ([]
) w celu ustawienia lub pobrania wartości elementu Vector. Kilka metod Vector udostępnia również mechanizmy ustawiania i pobierania wartości elementów. Należą do nich metody: push()
, pop()
, shift()
, unshift()
oraz inne. Właściwości i metody instancji Vector są podobne (a w większości przypadków identyczne) do właściwości i metod instancji Array. W większości sytuacji, w których można zastosować klasę Array, w której wszystkie elementy należą do tego samego typu danych, preferowane jest zastosowanie instancji Vector. Jednak instancje klasy Vector są tablicami gęstymi, co oznacza, że w każdym indeksie muszą mieć zdefiniowaną wartość (przy czym dopuszczalne są wartości null
). Ten wymóg nie obowiązuje w odniesieniu do instancji klasy Array.
Typ bazowy Vector określany jest za pomocą składni parametru typu przyrostkowego. Składnia parametru to sekwencja składająca się z kropki (.
), lewy nawias ostry (<
), nazwę klasy oraz prawy nawias ostry (>
), tak jak w poniższym przykładzie:
W pierwszym wierszu przykładu zmienna v
została zadeklarowana jako instancja Vector.Instancja <String>. Innymi słowy, reprezentuje instancję Vector (tablicę ze zdefiniowanym typem), która może zawierać i z której można podbierać jedynie instancje klasy String. Drugi wiersz stanowi przykład tworzenia tego samego typu Vector (czyli instancji Vector, której wszystkie elementy są obiektami String) i przypisania zmiennej v
.
var v:Vector.<String>; v = new Vector.<String>();
Zmienna deklarowana z instancją Vector.Typ danych <T> może jedynie przechowywać instancję Vector zbudowaną w oparciu o ten sam typ bazowy T
. Na przykład instancji Vector utworzonej za pomocą wywołania metody new Vector.<String>()
nie można przypisać do zmiennej zadeklarowanej z instancją Vector.<int>. Typy bazowe muszą być w pełni zgodne. Na przykład: nie można skompilować poniższego kodu, ponieważ typ bazowy instancji nie jest taki sam jak typ bazowy zadeklarowanej zmiennej (nawet w przypadku gdy podklasa Sprite to podklasa obiektu DisplayObject).
// This code doesn't compile even though Sprite is a DisplayObject subclass var v:Vector.<DisplayObject> = new Vector.<Sprite>();
Aby dokonać konwersji instancji Vector z typem bazowym T
na instancję Vector nadklasy T
, należy użyć globalnej funkcji Vector()
.
Oprócz ograniczeń dotyczących typów danych klasa Vector posiada inne, które odróżniają ją od klasy Array:
- Instancja Vector to tablica zagęszczona. W przeciwieństwie do klasy Array, która może przyjmować wartości dla indeksów 0 i 7, nawet w przypadku braku wartości dla pozycji od 1 do 6, dla instancji Vector musi istnieć wartość (lub wartość
null
) w każdym indeksie. - Opcjonalnie instancja Vector może posiadać stałą długość, co oznacza, że liczba zawieranych przez nią elementów nie może ulec zmianie.
- Dostęp do elementów tablicy Vector jest sprawdzany pod względem zakresu. Nie możliwy jest odczyt wartości w pozycji indeksu większego od ostatniego elementu (
length - 1
). Nie można ustawić wartości w pozycji indeksu większego o jeden znajdującego się poza bieżącym ostatnim indeksem (innymi słowy, można ustawić wartość jedynie w pozycji istniejącego indeksu lub indeksu[length]
).
W wyniku tych ograniczeń instancję Vector charakteryzują trzy podstawowe zalety, których nie ma instancja Array z elementami należącymi do jednej klasy:
- Wydajność: w porównaniu z instancją Array dostęp i iteracje elementów tablicy można uzyskać dużo szybciej w przypadku instancji Vector.
- Bezpieczeństwo typu: w trybie dokładnym kompilator może wskazywać błędy dotyczące typu danych. Do przykładów błędnego użycia typów danych należą: przypisywanie wartości niepoprawnego typu danych do instancji klasy Vector lub oczekiwanie niepoprawnego typu danych podczas odczytu wartości z instancji klasy Vector. Należy jednakże zauważyć, że w wypadku użycia metody
push()
lubunshift()
w celu dodania wartości do instancji Vector typy danych argumentów nie są sprawdzane w czasie kompilacji. Są one natomiast sprawdzane w czasie wykonywania. - Niezawodność: sprawdzanie zakresów w czasie wykonywania (lub sprawdzanie stałych długości) powoduje, że niezawodność operowania na obiektach Vector jest znacznie większa niż w przypadku operowania na obiektach Array.
Powiązane elementy interfejsu API
Właściwość | Zdefiniowane przez | ||
---|---|---|---|
constructor : Object
Odwołanie do obiektu klasy lub funkcji konstruktora, dotyczące danej instancji obiektu. | Object | ||
fixed : Boolean
Określa, czy można zmieniać właściwość length instancji Vector. | Vector | ||
length : uint
Zakres poprawnych indeksów dostępnych dla instancji Vector. | Vector |
Metoda | Zdefiniowane przez | ||
---|---|---|---|
Tworzy instancję Vector o określonym typie bazowym. | Vector | ||
Przeprowadza konkatenację wektorów na liście parametrów z elementami w tym wektorze, tworząc nowy wektor. | Vector | ||
Uruchamia funkcję testową poszczególnych elementów instancji Vector do momentu, aż pojawi się element, dla którego w przypadku określonej funkcji zostanie zwrócona wartość false. | Vector | ||
Uruchamia funkcję testową dla poszczególnych elementów instancji Vector i zwraca nową instancję Vector, która zawiera wszystkie elementy, dla których dana funkcja zwróciła wartość true. | Vector | ||
Uruchamia funkcję dla poszczególnych elementów wystąpienia klasy Vector. | Vector | ||
Wskazuje, czy dla obiektu zdefiniowano określoną właściwość. | Object | ||
Wyszukuje element instancji Vector i zwraca jego indeks. | Vector | ||
Wstawia pojedynczy element do obiektu klasy Vector. | Vector | ||
Wskazuje, czy instancja klasy Object należy do łańcucha prototypów obiektu określonego jako parametr. | Object | ||
Konwertuje elementy instancji Vector na ciągi znaków, wstawia między ciągami określone separatory, łączy ciągi oraz zwraca wynikowy ciąg znaków. | Vector | ||
Wyszukuje elementy w instancji Vector od końca od określonego indeksu i zwraca indeks zgodnego elementu. | Vector | ||
Uruchamia funkcję dla poszczególnych elementów instancji Vector i zwraca nową instancję Vector zawierającą wyniki, które odpowiadają rezultatom wywołania funkcji dla poszczególnych elementów tej instancji Vector. | Vector | ||
pop():T
Usuwa i zwraca ostatni element instancji Vector. | Vector | ||
Wskazuje, czy określona właściwość istnieje i jest przeliczalna. | Object | ||
Dodaje co najmniej jeden element na koniec wystąpienia klasy Vector i zwraca jego nową długość. | Vector | ||
Usuwa pojedynczy element z obiektu Vector. | Vector | ||
Odwraca kolejność elementów w obiekcie Vector. | Vector | ||
Ustawia dostępność właściwości dynamicznej używanej w pętlach. | Object | ||
shift():T
Usuwa i zwraca pierwszy element obiektu Vector. | Vector | ||
Zwraca nowy instancji Vector zwierający zakres elementów oryginalnej instancji Vector, nie modyfikując oryginalnej instancji Vector. | Vector | ||
Uruchamia funkcję testową dla poszczególnych elementów instancji Vector do momentu pojawienia się elementu, dla którego zostanie zwrócona wartość true. | Vector | ||
Sortuje elementy w obiekcie Vector i zwraca posortowany obiekt Vector. | Vector | ||
Dodaje i usuwa elementy z instancji Vector. | Vector | ||
Zwraca ciąg znaków reprezentujący elementy określonej instancji Vector. | Vector | ||
Zwraca ciąg znaków reprezentujący elementy instancji Vector. | Vector | ||
Dodaje co najmniej jeden element na początek instancji Vector i zwraca nową długość instancji Vector. | Vector | ||
Zwraca pierwotną wartość dla określonego obiektu. | Object |
fixed | właściwość |
fixed:Boolean
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Określa, czy można zmieniać właściwość length
instancji Vector. Jeśli ta wartość to true
, nie można zmienić właściwości length
. Oznacza to, że następujące operacje nie są dozwolone w przypadku gdy parametr fixed
ma wartość true
:
- bezpośrednie ustawianie właściwości
length
- przypisywanie wartości indeksowi
length
- wywoływanie metody zmieniającej właściwość
length
, w tym:pop()
push()
shift()
unshift()
splice()
(jeśli wywołanie metodysplice()
ma za zadanie spowodować zmianę właściwościlength
instancji Vector).
Implementacja
public function get fixed():Boolean
public function set fixed(value:Boolean):void
length | właściwość |
length:uint
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Zakres poprawnych indeksów dostępnych dla instancji Vector. Instancja Vector posiada indeksy do wartości length
(bez tej wartości).
Każdy element instancji Vector zawsze posiada wartość będącą jest albo instancją typu bazowego, albo wartością null
. Jeśli właściwość length
zostanie ustawiona na wartość większą niż wartość wcześniejsza, utworzone zostaną dodatkowe elementy i zapełnione wartością domyślną stosowną dla typu bazowego (null
dla typów odwołania).
Jeśli właściwość length
zostanie ustawiona na wartość mniejszą niż wartość wcześniejsza, wszystkie elementy o indeksie większym lub równym nowej wartości length
zostaną usunięte z instancji Vector.
Implementacja
public function get length():uint
public function set length(value:uint):void
Zgłasza
RangeError — Ta właściwość zmienia się w przypadku gdy parametr fixed ma wartość true .
| |
RangeError — Ta właściwość jest ustawiona na wartość większą niż maksymalny dopuszczalny indeks (232).
|
Vector | () | Konstruktor |
public function Vector(length:uint = 0, fixed:Boolean = false)
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Tworzy wystąpienie Vector o określonym typie bazowym.
Podczas wywołania konstruktora Vector.<T>()
należy za pomocą składni parametru określić typ bazowy. Składnia parametru to sekwencja składająca się z kropki (.
), lewy nawias ostry (<
), nazwę klasy oraz prawy nawias ostry (>
), tak jak w poniższym przykładzie:
var v:Vector.<String> = new Vector.<String>();
Aby utworzyć instancję Vector z instancji Array lub innej instancji Vector (jak np. tej o odmiennym typie bazowym), należy użyć globalnej funkcji Vector()
.
Aby utworzyć wstępnie zapełnioną instancję klasy Vector, należy skorzystać z następującej składni zamiast używać parametrów podanych poniżej:
// var v:Vector.<T> = new <T>[E0, ..., En-1 ,]; // For example: var v:Vector.<int> = new <int>[0,1,2,];
Do tej składni odnoszą się następujące informacje:
- Jest obsługiwana w programie Flash Professional CS5 i nowszych wersjach, Flash Builder 4 i nowszych wersjach oraz Flex 4 i nowszych wersjach.
- Końcowy przecinek jest opcjonalny.
- Puste elementy w tablicy nie są dozwolone; taka instrukcja, jak
var v:Vector.<int> = new <int>[0,,2,]
powoduje zgłoszenie błędu przez kompilator. - Nie można określić domyślnej długości instancji klasy Vector. Długość jest określana na podstawie liczby elementów na liście inicjującej instancję.
- Nie można określić, czy instancja klasy Vector ma mieć stałą długość, czy nie. Należy zamiast tego skorzystać z właściwości
fixed
. - Jeśli elementy przekazane jako wartości nie będą zgodne z określonym typem, może dojść do utraty danych lub wystąpienia błędów. Na przykład:
var v:Vector.<int> = new <int>[4.2]; // compiler error when running in strict mode trace(v[0]); //returns 4 when not running in strict mode
length:uint (default = 0 ) — Początkowa długość (liczba elementów) instancji Vector. Jeśli wartość tego parametru jest większa od zera, tworzona jest określona liczba elementów Vector o domyślnej wartości właściwej dla typu bazowego (null dla typów odwołania).
| |
fixed:Boolean (default = false ) — Wartość instancji Vector może być stała (wartość true ) lub zmienna (wartość false ). Te wartość można również ustawić za pomocą właściwości fixed .
|
Powiązane elementy interfejsu API
concat | () | metoda |
AS3 function concat(... args):Vector.<T>
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Przeprowadza konkatenację wektorów na liście parametrów z elementami w tym wektorze, tworząc nowy wektor. Wektory na liście parametrów muszą mieć ten sam typ bazowy lub podtyp co ten wektor. Jeśli nie zostaną przekazane żadne parametry, zwrócony wektor będzie stanowić duplikat (jednopoziomowy klon) oryginalnego wektora.
Parametry
... args — Zero lub więcej wektorów, których typ bazowy jest taki sam jak typ lub podtyp tego wektora.
|
Vector.<T> — Wektor, który ma ten sam typ bazowy co ten wektor i zawiera elementy z tego wektora, a po nich elementy wektorów z listy parametrów.
|
Zgłasza
TypeError — Jeśli argument nie jest wektorem typu bazowego lub nie można go przekonwertować na taki wektor.
|
every | () | metoda |
AS3 function every(callback:Function, thisObject:Object = null):Boolean
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Uruchamia funkcję testowa dla poszczególnych elementów instancji Vector do momentu, aż pojawi się element, dla którego określona funkcja zwróci wartość false
. Tę metodę wykorzystuje się do określenia, czy wszystkie elementy instancji Vector spełniają dane kryterium, jak np. posiadanie wartości mniejszych od określonej liczby.
Wartość drugiego parametru thisObject
dla tej metody musi być równa wartości null
, jeśli pierwszy parametr callback
stanowi zamknięcie metody. Jest to najczęstszy sposób korzystania z tej metody.
Załóżmy, że użytkownik tworzy funkcję dla klatki na głównej osi czasu programu Flash Professional i chce, aby była wywoływana w innym kontekście identyfikatora this
:
function myFunction(item:T, index:int, vector:Vector.<T>):Boolean { // your code here }
Załóżmy, że wówczas użytkownik stosuje metodę every()
dla instancji Vector o nazwie myVector
:
myVector.every(myFunction, someObject);
Ponieważ funkcja myFunction
należy do klasy głównej pliku SWF, nie można wykonać jej w innym kontekście identyfikatora this
. Uruchomienie tego kodu spowoduje wygenerowanie wyjątku w środowisku wykonawczym Flash. Aby uniknąć tego błędu wykonania, należy funkcji przypisać zmienną w następujący sposób:
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):Boolean { //your code here }; myVector.every(myFunction, someObject);
Parametry
callback:Function — Funkcja, która będzie uruchamiana dla poszczególnych elementów instancji Vector. Tę funkcję wywołuje się z trzema argumentami: bieżącym elementem instancji Vector, indeksem elementu oraz instancją Vector:
function callback(item:T, index:int, vector:Vector.<T>):Boolean { // your code here } Funkcja wywołania zwrotnego powinna zwrócić wartość typu Boolean. | |
thisObject:Object (default = null ) — Obiekt, do którego odwołuje się identyfikator this funkcji zwrotnej, jeśli ta funkcja zostaje wywołana.
|
Boolean — Wartość typu Boolean jest true , jeśli dla wszystkich elementów instancji Vector funkcja zwraca wartość true . W przeciwnym razie wartość typu Boolean to false .
|
Powiązane elementy interfejsu API
filter | () | metoda |
AS3 function filter(callback:Function, thisObject:Object = null):Vector.<T>
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Uruchamia funkcję testową dla poszczególnych elementów instancji Vector i zwraca nową instancję Vector, która zawiera wszystkie elementy, dla których dana funkcja zawraca wartość true
. Jeśli dla danego elementu funkcja zwraca wartość false
, nie zostaje on uwzględniony w wynikowej instancji Vector. Typ bazowy zwróconej instancji Vector jest zgodny z typem bazowym instancji Vector, dla której dana funkcja została wywołana.
Wartość drugiego parametru thisObject
dla tej metody musi być równa wartości null
, jeśli pierwszy parametr callback
stanowi zamknięcie metody. Jest to najczęstszy sposób korzystania z tej metody.
Załóżmy, że użytkownik tworzy funkcję dla klatki na głównej osi czasu programu Flash Professional i chce, aby była wywoływana w innym kontekście identyfikatora this
:
function myFunction(item:T, index:int, vector:Vector.<T>):Boolean { // your code here }
Załóżmy, że użytkownik uruchamia następnie metodę filter()
dla instancji Vector o nazwie myVector
:
var result:Vector.<T> = myVector.filter(myFunction, someObject);
Ponieważ funkcja myFunction
należy do klasy głównej pliku SWF, nie można wykonać jej w innym kontekście identyfikatora this
. Uruchomienie tego kodu spowoduje wygenerowanie wyjątku w środowisku wykonawczym Flash. Aby uniknąć tego błędu wykonania, należy funkcji przypisać zmienną w następujący sposób:
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):Boolean { //your code here }; myVector.filter(myFunction, someObject);
Parametry
callback:Function — Funkcja, która będzie uruchamiana dla poszczególnych elementów instancji Vector. Tę funkcję wywołuje się z trzema argumentami: bieżącym elementem instancji Vector, indeksem elementu oraz instancją Vector:
function callback(item:T, index:int, vector:Vector.<T>):Boolean; | |
thisObject:Object (default = null ) — Obiekt, do którego odwołuje się identyfikator this funkcji zwrotnej, jeśli ta funkcja zostaje wywołana.
|
Vector.<T> — Nowa instancja Vector zawierająca wszystkie elementy oryginalnej instancji Vector, dla których funkcja callback zwróciła wartość true .
|
Powiązane elementy interfejsu API
forEach | () | metoda |
AS3 function forEach(callback:Function, thisObject:Object = null):void
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Uruchamia funkcję dla poszczególnych elementów instancji Vector.
Wartość drugiego parametru thisObject
dla tej metody musi być równa wartości null
, jeśli pierwszy parametr callback
stanowi zamknięcie metody. Jest to najczęstszy sposób korzystania z tej metody.
Załóżmy, że użytkownik tworzy funkcję dla klatki na głównej osi czasu programu Flash Professional i chce, aby była wywoływana w innym kontekście identyfikatora this
:
function myFunction(item:T, index:int, vector:Vector.<T>):void { // your code here }
Załóżmy, że użytkownik uruchamia następnie metodę forEach()
dla instancji Vector o nazwie myVector
:
myVector.forEach(myFunction, someObject);
Ponieważ funkcja myFunction
należy do klasy głównej pliku SWF, nie można wykonać jej w innym kontekście identyfikatora this
. Uruchomienie tego kodu spowoduje wygenerowanie wyjątku w środowisku wykonawczym Flash. Aby uniknąć tego błędu wykonania, należy funkcji przypisać zmienną w następujący sposób:
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):void { //your code here }; myVector.forEach(myFunction, someObject);
Parametry
callback:Function — Funkcja, która będzie uruchamiana dla poszczególnych elementów instancji Vector. Tę funkcję wywołuje się z trzema argumentami: bieżącym elementem instancji Vector, indeksem elementu oraz instancją Vector:
function callback(item:T, index:int, vector:Vector.<T>):void; Każda wartość zwrócona przez wywołaną funkcję jest pomijana. | |
thisObject:Object (default = null ) — Obiekt, do którego odwołuje się identyfikator this funkcji zwrotnej, jeśli ta funkcja zostaje wywołana.
|
indexOf | () | metoda |
AS3 function indexOf(searchElement:T, fromIndex:int = 0):int
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Wyszukuje element instancji Vector i zwraca jego indeks. Element jest porównywany z elementami Vector za pomocą operatora ścisłej równości (===
).
Parametry
searchElement:T — Element szukany w instancji Vector.
| |
fromIndex:int (default = 0 ) — Miejsce w instancji Vector, od którego wyszukiwanie elementu zostanie rozpoczęte. Jeśli ten parametr ma wartość ujemną, jest traktowany jako suma wartości właściwości length + fromIndex , co oznacza, że wyszukiwanie rozpoczyna się od elementów -fromIndex od końca i jest kontynuowane z tamtego położenia w przód, do końca instancji Vector.
|
int — Pozycja pierwszego elementu w instancji Vector. Jeśli argument searchElement nie zostanie znaleziony, zwrócona zostanie wartość -1.
|
Powiązane elementy interfejsu API
insertAt | () | metoda |
AS3 function insertAt(index:int, element:T):void
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 19, AIR 19 |
Wstawia pojedynczy element do obiektu klasy Vector. Ta metoda zmienia instancję Vector i nie tworzy jej kopii.
Parametry
index:int — Liczba całkowita określająca pozycję w obiekcie Vector, w której ma zostać wstawiony element. W celu określenia położenia względem końca instancji Vector można użyć całkowitej liczby ujemnej (na przykład: -1 dla ostatniego elementu instancji Vector).
| |
element:T |
Zgłasza
RangeError — Jeśli ta metoda jest wywoływana, gdy parametr fixed ma wartość true .
|
join | () | metoda |
AS3 function join(sep:String = ","):String
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Konwertuje elementy instancji Vector na ciągi znaków, wstawia między ciągami określone separatory, łączy ciągi oraz zwraca wynikowy ciąg znaków. Zagnieżdżona instancja Vector jest zawsze oddzielona przecinkiem (,), a nie separatorem przekazany za pomocą metody join()
.
Parametry
sep:String (default = ", ") — Znak lub ciąg znaków, który oddziela elementy instancji Vector w wynikowym ciągu znaków. W przypadku pominięcia tego parametru, znakiem domyślnym jest przecinek.
|
String — Ciąg znaków składający się z elementów instancji Vector przekonwertowanych na ciągi znaków i oddzielonych określonym ciągiem znaków.
|
Powiązane elementy interfejsu API
lastIndexOf | () | metoda |
AS3 function lastIndexOf(searchElement:T, fromIndex:int = 0x7fffffff):int
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Wyszukuje elementy w instancji Vector od końca od określonego indeksu i zwraca indeks zgodnego elementu. Element jest porównywany z elementami wystąpienia klasy Vector za pomocą operatora ścisłej równości (===
).
Parametry
searchElement:T — Element szukany w instancji Vector.
| |
fromIndex:int (default = 0x7fffffff ) — Miejsce w instancji Vector, od którego wyszukiwanie elementu zostanie rozpoczęte. Wartością domyślna jest maksymalna, dopuszczalna wartość indeksu, co oznacza, że wyszukiwanie rozpoczyna się od ostatniego elementu instancji Vector.
Jeśli ten parametr ma wartość ujemną, jest traktowany jako suma wartości właściwości |
int — Pozycja pierwszego elementu w instancji Vector. Jeśli argument searchElement nie zostanie znaleziony, zwrócona zostanie wartość -1.
|
Powiązane elementy interfejsu API
map | () | metoda |
AS3 function map(callback:Function, thisObject:Object = null):Vector.<T>
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Uruchamia funkcję dla poszczególnych elementów instancji Vector i zwraca nową instancję Vector zawierającą wyniki, które odpowiadają rezultatom wywołania funkcji dla poszczególnych elementów tej instancji Vector. Wynikowa instancja Vector posiada ten sam typ bazowy oraz wartość parametru length
co oryginalny instancja Vector. Element o indeksie i
w wynikowej instancji Vector stanowi wynik wywołania ostatniego elementu o indeksie i
w oryginalnej instancji Vector.
Wartość drugiego parametru thisObject
dla tej metody musi być równa wartości null
, jeśli pierwszy parametr callback
stanowi zamknięcie metody. Jest to najczęstszy sposób korzystania z tej metody.
Załóżmy, że użytkownik tworzy funkcję dla klatki na głównej osi czasu programu Flash Professional i chce, aby była wywoływana w innym kontekście identyfikatora this
:
function myFunction(item:Object, index:int, vector:Vector.<T>):T { // your code here }
Załóżmy, że użytkownik zamierza następnie uruchomić metodę map()
dla instancji Vector o nazwie myVector
:
myVector.map(myFunction, someObject);
Ponieważ funkcja myFunction
należy do klasy głównej pliku SWF, nie można wykonać jej w innym kontekście identyfikatora this
. Uruchomienie tego kodu spowoduje wygenerowanie wyjątku w środowisku wykonawczym Flash. Aby uniknąć tego błędu wykonania, należy funkcji przypisać zmienną w następujący sposób:
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):void { //your code here }; myVector.map(myFunction, someObject);
Parametry
callback:Function — Funkcja, która będzie uruchamiana dla poszczególnych elementów instancji Vector. Tę funkcję wywołuje się z trzema argumentami: bieżącym elementem instancji Vector, indeksem elementu oraz instancją Vector:
function callback(item:T, index:int, vector:Vector.<T>):T; | |
thisObject:Object (default = null ) — Obiekt, do którego odwołuje się identyfikator this funkcji zwrotnej, jeśli ta funkcja zostaje wywołana.
|
Vector.<T> — Nowa instancja Vector zawierająca wyniki wywołania funkcji dla poszczególnych elementów tej instancji Vector. Wynikowa instancja Vector posiada ten sam typ bazowy oraz wartość parametru length co instancja oryginalna.
|
Powiązane elementy interfejsu API
pop | () | metoda |
AS3 function pop():T
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Usuwa i zwraca ostatni element instancji Vector. Wywołanie tej funkcji spowoduje pomniejszenie o jeden właściwości length
instancji Vector.
T — Wartość ostatniego elementu w określonej instancji Vector.
|
Zgłasza
RangeError — Jeśli ta metoda jest wywoływana, gdy parametr fixed ma wartość true .
|
Powiązane elementy interfejsu API
push | () | metoda |
AS3 function push(... args):uint
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Dodaje co najmniej jeden element na koniec wystąpienia klasy Vector i zwraca jego nową długość.
Ponieważ ta funkcje może przyjmować wiele argumentów, w trakcie kompilacji, nawet w trybie dokładnym, typ danych nie jest sprawdzany. W przypadku przekazania argumenty, który nie jest instancją typu bazowego podczas wykonania wygenerowany zostanie wyjątek.
Parametry
... args — Co najmniej jedna wartość dołączana do wystąpienia klasy Vector.
|
uint — Długość wystąpienia klasy Vector po dodaniu nowych elementów.
|
Zgłasza
TypeError — Jeśli jakikolwiek margines nie jest wystąpieniem typu podstawowego T klasy Vector.
| |
RangeError — Jeśli ta metoda jest wywoływana, gdy parametr fixed ma wartość true .
|
Powiązane elementy interfejsu API
removeAt | () | metoda |
AS3 function removeAt(index:int):T
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 19, AIR 19 |
Usuwa pojedynczy element z obiektu Vector. Ta metoda zmienia obiekt Vector i nie tworzy jego kopii.
Parametry
index:int — Liczba całkowita określająca indeks elementu do usunięcia z obiektu Vector. W celu określenia pozycji względem końca obiektu Vector można użyć całkowitej liczby ujemnej (na przykład –1 dla ostatniego elementu obiektu Vector).
|
T — Element usunięty z tablicy pierwotnego obiektu Vector.
|
Zgłasza
RangeError — Jeśli argument index określa indeks do usunięcia poza zakresem obiektu Vector.
| |
RangeError — Jeśli ta metoda jest wywoływana, gdy parametr fixed ma wartość true .
|
reverse | () | metoda |
AS3 function reverse():Vector.<T>
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Odwraca kolejność elementów w obiekcie Vector. Ta metoda zmienia obiekt Vector, dla którego została wywołana.
ZwracaVector.<T> — Obiekt Vector zawierający elementy w odwrotnej kolejności.
|
shift | () | metoda |
AS3 function shift():T
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Usuwa i zwraca pierwszy element instancji Vector. Pozostałe elementy instancji Vector zostają przesunięte względem swojego oryginalnego położenia i do położenia i -1.
ZwracaT — Pierwszy element instancji Vector.
|
Zgłasza
RangeError — Jeśli parametr fixed ma wartość true .
|
Powiązane elementy interfejsu API
slice | () | metoda |
AS3 function slice(startIndex:int = 0, endIndex:int = 16777215):Vector.<T>
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Zwraca nowy instancji Vector zwierającą zakres elementów oryginalnej instancji Vector, nie modyfikując oryginalnej instancji Vector. Zwrócona instancja Vector zawiera element startIndex
oraz wszystkie elementy aż do elementu endIndex
(z jego wyłączeniem).
Jeśli nie zostaną przekazane żadne parametry, nowy obiekt Vector będzie stanowić duplikat (jednopoziomowy klon) oryginalnego obiektu Vector. Przekazanie w obu parametrach wartości 0 spowoduje utworzenie nowego, pustego obiektu Vector tego samego typu, co oryginalny obiekt Vector.
Parametry
startIndex:int (default = 0 ) — Liczba określająca indeks punktu początkowego fragmentu tablicy. Jeśli właściwość startIndex określa liczba ujemna, punkt początkowy znajduje się na końcu instancji Vector, gdzie -1 określa położenie ostatniego elementu.
| |
endIndex:int (default = 16777215 ) — Liczba określająca indeks punktu końcowego fragmentu obiektu. W przypadku pominięcia tego parametru, fragment obiektu będzie zawierał wszystkie elementy od punktu początkowego do końca instancji Vector. Jeśli właściwość endIndex określa liczba ujemna, punkt końcowy będzie określany od końca instancji Vector, gdzie -1 określa położenie ostatniego elementu.
|
Vector.<T> — instancja Vector, która zawiera zakres elementów oryginalnej instancji Vector.
|
some | () | metoda |
AS3 function some(callback:Function, thisObject:Object = null):Boolean
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Uruchamia funkcję testową dla poszczególnych elementów instancji Vector do momentu pojawienia się elementu, dla którego zwracana będzie wartość true
. Ta metoda służy określeniu, czy dowolny element obiektu Vector spełnia kryterium, jak np. posiadanie wartości mniejszej od określonej liczby.
Wartość drugiego parametru thisObject
dla tej metody musi być równa wartości null
, jeśli pierwszy parametr callback
stanowi zamknięcie metody. Jest to najczęstszy sposób korzystania z tej metody.
Załóżmy, że użytkownik tworzy funkcję dla klatki na głównej osi czasu i chce, aby była wywoływana w innym kontekście identyfikatora this
:
function myFunction(item:Object, index:int, vector:Vector.<T>):Boolean { // your code here }
Załóżmy, że użytkownik uruchamia następnie metodę some()
dla instancji Vector o nazwie myVector
:
myVector.some(myFunction, someObject);
Ponieważ funkcja myFunction
należy do klasy głównej pliku SWF, nie można wykonać jej w innym kontekście identyfikatora this
. Uruchomienie tego kodu spowoduje wygenerowanie wyjątku w środowisku wykonawczym Flash. Aby uniknąć tego błędu wykonania, należy funkcji przypisać zmienną w następujący sposób:
var myFunction:Function = function(item:T, index:int, vector:Vector.<T>):Boolean { //your code here }; myVector.some(myFunction, someObject);
Parametry
callback:Function — Funkcja, która będzie uruchamiana dla poszczególnych elementów instancji Vector. Tę funkcję wywołuje się z trzema argumentami: bieżącym elementem instancji Vector, indeksem elementu oraz instancją Vector:
function callback(item:T, index:int, vector:Vector.<T>):Boolean Funkcja wywołania zwrotnego powinna zwrócić wartość typu Boolean. | |
thisObject:Object (default = null ) — Obiekt, do którego odwołuje się identyfikator this funkcji zwrotnej, jeśli ta funkcja zostaje wywołana.
|
Boolean — Wartość typu Boolean to true , jeśli dla dowolnego elementu instancji Vector funkcja zwraca wartość true . W przeciwnym razie wartość typu Boolean to false .
|
Powiązane elementy interfejsu API
sort | () | metoda |
AS3 function sort(sortBehavior:*):Vector.<T>
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Sortuje elementy w obiekcie Vector i zwraca posortowany obiekt Vector. Ta metoda sortuje zgodnie z parametrem sortBehavior
, który jest funkcją porównującą dwie wartości lub zestawem opcji sortowania.
Ta metoda przyjmuje jeden parametr. Parametr jest jednym z następujących elementów:
- Może to być funkcja przyjmująca dwa argumenty typu bazowego (
T
) obiektu Vector i zwracająca liczbę.function compare(x:T, y:T):Number {}
Logika funkcji działa tak, że w przypadku dwóch elementów
x
iy
funkcja zwraca jedną z następujących trzech wartości:- liczbę ujemną, jeśli
x
występuje przedy
w wysortowanej sekwencji - 0, jeśli
x
jest równey
- liczbę dodatnią, jeśli
x
występuje poy
w wysortowanej sekwencji
- liczbę ujemną, jeśli
- liczbę stanowiącą sumę bitową następujących wartości:
- 1 lub
Array.CASEINSENSITIVE
- 2 lub
Array.DESCENDING
- 4 lub
Array.UNIQUESORT
- 8 lub
Array.RETURNINDEXEDARRAY
- 16 lub
Array.NUMERIC
Jeśli wartość wynosi 0, sortowanie działa w następujący sposób:
- Wielkość liter jest w sortowaniu uwzględniania (Z poprzedza a).
- Sortowanie jest rosnące (a poprzedza b).
- Zmodyfikowana tablica odzwierciedla porządek sortowania; elementy złożone o identycznych polach sortowania zostały dowolnie umieszczone w sortowanej tablicy jedno po drugim.
- Wszystkie elementy bez względu na typ danych są sortowane jak ciągi znaków, tak więc 100 poprzedza 99, ponieważ „1” stanowi wartość ciągu niższą od „9”.
- 1 lub
Parametry
sortBehavior:* — Wartość typu Function lub Number określa zachowanie sortowania. Parametr typu Function pozwala określić metodę porównania. Parametr typu Number pozwala określić opcje sortowania.
|
Vector.<T> — Obiekt Vector z elementami w nowej kolejności.
|
Powiązane elementy interfejsu API
splice | () | metoda |
AS3 function splice(startIndex:int, deleteCount:uint = 4294967295, ... items):Vector.<T>
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Dodaje i usuwa elementy z instancji Vector. Ta metoda zmienia obiekt Vector i nie tworzy jego kopii.
Uwaga: Aby nadpisać tę metodę w podklasie Vector, należy jako parametrów użyć parametrów ...args
, jak pokazano w poniższym przykładzie:
public override function splice(...args) { // your statements here }
Parametry
startIndex:int — Liczba całkowita, która określa indeks elementu instancji Vector w położeniu, gdzie wstawienie lub usunięcie zaczyna się. W celu określenia pozycji względem końca obiektu Vector można użyć całkowitej liczby ujemnej (na przykład –1 dla ostatniego elementu obiektu Vector).
| |
deleteCount:uint (default = 4294967295 ) — Liczba całkowita określająca liczbę elementów do usunięcia. Ta liczba zawiera element określony parametrem startIndex . Jeśli wartość wynosi 0, żaden element nie zostanie usunięty.
| |
... items — Opcjonalna lista jednej lub wielu oddzielonych przecinkiem wartości, która zostanie wstawiona do tablicy Vector w położeniu określonym za pomocą parametru startIndex .
|
Vector.<T> — instancja Vector zawierająca elementy, które zostały usunięte z oryginalnego obiektu Vector.
|
Zgłasza
RangeError — Jeśli argumenty startIndex i deleteCount określają indeks, który ma zostać usunięty, ponieważ znajduje się poza obwiednią instancji Vector.
| |
RangeError — Jeśli ta metoda jest wywołana podczas gdy parametr fixed ma wartość true a operacja splice() zmienia parametr length instancji Vector.
|
toLocaleString | () | metoda |
public function toLocaleString():String
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Zwraca ciąg znaków reprezentujący elementy określonej instancji Vector. Każdy element instancji Vector, począwszy od indeksu 0 i skończywszy na najwyższym indeksie, jest konwertowany na połączony ciąg znaków i oddzielony przecinkami. W przypadku implementacji narzędzia ActionScript 3.0 ta metoda zwraca tę sama wartość co metoda Vector.toString()
.
String — Ciąg znaków reprezentujący elementy wystąpienia klasy Vector.
|
Powiązane elementy interfejsu API
toString | () | metoda |
public function toString():String
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Zwraca ciąg znaków reprezentujący elementy instancji Vector. Każdy element wystąpienia klasy Vector, począwszy od indeksu 0 i skończywszy na najwyższym indeksie, jest konwertowany na połączony ciąg i oddzielany przecinkami. Aby określić niestandardowy separator, należy użyć metody Vector.join()
.
String — Ciąg znaków reprezentujący elementy instancji Vector.
|
Powiązane elementy interfejsu API
unshift | () | metoda |
AS3 function unshift(... args):uint
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Dodaje co najmniej jeden element na początek instancji Vector i zwraca nową długość instancji Vector. Pozostałe elementy instancji Vector są przesuwane względem swojego oryginalnego położenia i do nowego położenia o indeksie i + ilość nowych elementów.
Ponieważ ta funkcje może przyjmować wiele argumentów, w trakcie kompilacji, nawet w trybie dokładnym, typ danych nie jest sprawdzany. W przypadku przekazania argumenty, który nie jest instancją typu bazowego podczas wykonania wygenerowany zostanie wyjątek.
Parametry
... args — Co najmniej jedna instancja typu bazowego instancji Vector, która zostanie wstawiona na początku tego obiektu.
|
uint — Liczba całkowita reprezentująca nową długość instancji Vector.
|
Zgłasza
TypeError — Jeśli jakikolwiek margines nie jest instancją typu podstawowego T klasy Vector.
| |
RangeError — Jeśli ta metoda jest wywoływana, gdy parametr fixed ma wartość true .
|
Powiązane elementy interfejsu API
Tue Jun 12 2018, 12:06 PM Z