Sviluppo4d.it
Sito indipendente di informazioni tecniche per sviluppatori 4th Dimension italiani  

Sviluppatori 4D

Utility 4D

Risorse 4D



4d logo
Naviga: Prev Next

Titolo: Cancellazioni da un array

Categoria: Stile Ultimo Aggiornamento: 11/06/04


Il comando DELETE ELEMENT permette di cancellare l'elemento di un array. Per usare questo comando all'interno di un ciclo For bisogna fare attenzione, perchè cancellando un elemento ovviamente diminuisce la dimensione dell'array e cambia anche la posizione degli elementi successivi.
Prendiamo come esempio la necessità di cancellare da un array i valori duplicati. Un approccio potrebbe essere:

C_TEXT($valore)
C_LONGINT($size_L;$i)
If (Size of array(MioArray)>0)
  $size_L:=Size of array(MioArray)
  SORT ARRAY(MioArray)
  $valore:=MioArray{1}
  For ($i;2;$size_L)
      If ($valore=MioArray{$i})
          MioArray{$i}:=""
      Else
          $valore:=MioArray{$i}
      End if
  End for
  SORT ARRAY(MioArray)
  For ($i;1;$size_L)
      If ((MioArray{1})="")
          DELETE ELEMENT(MioArray;1)
      End if
  End for
End if

Ma così ho dovuto scorrere due volte il mio array: per scorrerlo solo una volta devo effettuare le cancellazioni durante il primo ciclo, ma con qualche piccolo accorgimento. Infatti, senza usare la variabile $valore e con un solo ciclo for ma che scorra l'array al contrario possiamo ottenere lo stesso risultato:

C_LONGINT($size_L;$i)
If (Size of array(MioArray)>0)
    $size_L:=Size of array(MioArray)
    SORT ARRAY(MioArray)
    For ($i;$size_L;2;-1)
          If (MioArray{$i}=MioArray{$i-1})
           DELETE ELEMENT(MioArray;$i)
          End if
    End for
End if


Inviato da: PierPaolo Sichera Visite: 14198

Se accedi con utente e password, puoi aggiungere dei commenti.


Accesso

User:
Pass: Accedi

Cerca

Se non trovi le informazioni che cerchi scrivi a aiuto@sviluppo4d.it

4D Principali

4D Discussioni

Faq random


Crediti

Dominio registrato da ZetaNet
Sito realizzato da Nexus srl
4D SQL 11.9.0 offerto da 4D & Italsoftware
Icone di FAMFAMFAM
Moderato da Umberto Migliore
303 utenti registrati

Pagina servita il 28/03/24 alle 09:11:40 Valid HTML 4.01! Valid CSS!

Mutuo Facile, iDigitalScout, iDigitalTags e altre app di Nexid srl per iPhone e iPad

Cidroid, distributore italiano lettori barcode per IOS Apple iPhone, iPod, iPad