Differenze tra le versioni di "Estrae elementi da un array"
imported>Root (Nuova pagina: ==Descrizione== Questa azione permette di esaminare il contenuto di un array, estraendo un numero variabile di suoi elementi. L'array di partenza può essere lasciato inalterato oppure...) |
imported>Root |
(Nessuna differenza)
|
Versione delle 20:19, 11 mar 2010
Descrizione
Questa azione permette di esaminare il contenuto di un array, estraendo un numero variabile di suoi elementi. L'array di partenza può essere lasciato inalterato oppure può essere ricalcolato eliminando gli elementi estratti.
Parametri
(IN) array
Rappresenta l'array dal quale vogliamo estrarre gli elementi.
(IN) position
Indica la posizione dell'elemento da estrarre. Esistono le seguenti possibilità:
- HEAD: Viene estratto il primo elemento dell'array. Se l'array e' vuoto viene generato un errore ed il flusso si interrompe.
- TAIL: Viene estratto l'ultimo elemento dell'array. Se l'array e' vuoto viene generato un errore ed il flusso si interrompe.
- INDEX: Viene estratto l'elemento indicato dal parametro index (compare solo in questa modalità). L'indice ha base 0 (zero), quindi il primo elemento ha indice 0. Se l'indice e' non specificato oppure esce dalla disponibilità dell'array viene generato un errore ed il flusso si interrompe.
- RANGE: Viene estratto un sotto insieme di elementi indicato dai parametri from_index e to_index (compaiono solo in questa modalità). Gli indici hanno base 0 (zero), quindi il primo elemento ha indice 0. Se gli indici sono non specificati oppure se escono dalla disponibilità dell'array oppure se sono in ordine errato viene generato un errore ed il flusso si interrompe.
Nota: L'estrazione avviene secondo lo standard Java, quindi vengono estratti gli elementi dall'indice from_index includo all'indice to_index escluso
Esempio: Array contenente [ a, b, c, d, e, f ]. Se from_index=2 e to_index=4 il risultato sarà [ c, d ] (vengono estratti gli elementi con indice 2 e 3).
(IN) remove
Indica se gli elementi estratti devono anche essere rimossi dall'array (1) oppure se devono rimanervi (0). Nel primo caso compare il parametro di output modified_array, contenente l'array modificato.
Nota: Per memorizzare la modifica all'array originale, è necessario prelevare il valore del risultato modified_array e copiarlo in un attributo di classe. In caso contrario l'array usato in input non verrà alterato in alcun modo.
(IN) type
Indica il tipo degli elementi richiesto in output. Se gli elementi dell'array non sono di questo tipo allora vengono convertiti. Anche il valore del risultato modified_array viene influenzato da questo parametro.
(OUT) result
Rappresenta il risultato dell'estrazione. Sarà uno scalare se si utilizza HEAD, TAIL, INDEX, mentre sarà un array se si utilizza RANGE.
(OUT) modified_array
Rappresenta l'array modificato se si attiva la modalità remove=1.
Nota: Utilizzando la modalità RANGE e rimuovendo zero elementi (ad esempio range da 0 a 0) è possibile usare questa azione per convertire il tipo di un array.