Vkládání nebo odebírání prvků z kolekce

Automaticky přeloženo z Deepl

Přidávání a/nebo odebírání prvků do a z kolekcí jsou běžné programátorské úlohy, se kterými se vývojáři často setkávají. 4D v16 R6 poskytuje více než 40 metod pro kolekce, včetně metod speciálně určených pro přidávání a odebírání prvků v kolekci. Pomocí těchto metod můžete snadno vytvořit zásobník (FIFO) nebo frontu (LIFO), přidávat nové prvky na libovolné pozici a mnoho dalšího…

Tento článek je součástí seriálu, který ukazuje, jak manipulovat s kolekcemi pomocí metod přidaných do 4D v16 R6. Chcete-li se dozvědět ještě více, stáhněte si náš databázový příklad, který obsahuje 12 různých příkladů ukazujících, co všechno můžete s metodami kolekcí dělat!

Příklad databáze: Správa kolekcí

Správa prvních a posledních prvků

Přidání hodnoty na začátek kolekce nebo odstranění prvního prvku je snadné díky funkci shift a unshift metodám.

$col:=Novákolekce("a"; "b")
// Vložení nové hodnoty na začátek $col
$col.unshift("c") // $col=["c", "a", "b"]
// Načtení a odstranění prvního prvku $col
$r:=$col.shift()
// $r="c"
// $col=["a", "b"]

Stejně tak je možné použít metody push lze přidat prvek na konec kolekce a metodu pop lze odebrat poslední prvek.$col:=Novákolekce("a"; "b")
// Vložení nové hodnoty na konec kolekce $col
$col.push("c") // $col=["a", "b", "c"]
// Načtení a odstranění posledního prvku $col
$r:=$col.pop()
// $r="c"
// $col=["a", "b"]

Vložení NEBO odstranění libovolného prvku

Samozřejmě je také možné přidat nebo odebrat prvek kdekoli v kolekci pomocí příkazu insert a remove metodami:

$col:=Newcollection("a"; "b")
// Vložení nové hodnoty na určitou pozici v $col
$col.insert(1; "c") // $col=["a", "c", "b"]
// Odstranění druhého prvku $col
$col.remove(1)
// $col=["a", "b"].

. clear odebere všechny prvky v kolekci:

$col:=Newcollection("a"; "b"; "c"; "d"; "e")
$col.clear() // $col=[]

Naplnění nebo změna velikosti kolekce

Všechny hodnoty v kolekci můžete nahradit pomocí metody fill metodu.

$col:=Newcollection("a"; "b"; "c"; "d"; "e")
// Resetujte všechny hodnoty $col na ""
$col.fill("") // $col=["","","","","",""]

A velikost kolekce můžete změnit pomocí metody resize metodou:

$col:=Novákolekce("a"; "b")
$col.resize(5;"") // $col=[a,b,"","","",""]

Fabrice Mainguené
- Product Owner -Fabrice Mainguené se připojil k týmu 4D Program v listopadu 2016. Jako Product Owner má na starosti psaní uživatelských příběhů, které následně převádí do funkčních specifikací. Jeho úkolem je také zajistit, aby dodaná implementace funkcí splňovala potřeby zákazníků.Po získání bakalářského titulu v oboru informatiky na CNAM nastoupil Fabrice do malé softwarové vydavatelské společnosti jako vývojář Windev. Poté pracoval pro různé společnosti v oblasti průmyslu a obchodu jako vývojář aplikací Windev a webových aplikací a také jako technický poradce pro nové funkce.