PHP è l'unico linguaggio popolare che unisce matrici semplici e associative in un unico tipo? [chiuso]

0

Sto facendo una ricerca su PHP e mi chiedo se ci siano altre lingue di programmazione comunemente usate che usano un array associativo per la semplice memorizzazione di elementi indicizzati e la funzionalità dei valori-chiave. Rende il PHP unico in questo senso?

Ad esempio, una lingua come C # distingue chiaramente tra una matrice semplice e una mappa \ dictionary \ hash

T[] array = new T[];
Dictionary<T, S> map = new Dictionary<T, S>();

Nel frattempo PHP non fa alcuna distinzione (in fase di progettazione)

$array = array(1, 2, 3);
$map = array("one" => 1, "two" => 2, "three" => 3)
    
posta Desmond Hume 24.06.2014 - 11:53
fonte

2 risposte

4

Anche Lua ha questa caratteristica. Le tabelle di Lua possono essere trattate sia come mappe sia come array. (Internamente, una tabella Lua viene implementata avendo due parti (l'utente non ne è a conoscenza), la parte dell'array e la parte della mappa, quindi è efficiente.)

(JavaScript ha anche una sorta di questa dualità: poiché ogni oggetto può fungere da mappa e ogni array è un oggetto, gli array possono anche servire da mappa. Ma, penso, non è vero il contrario: oggetti che non sono matrici che non possono servire come array efficienti (correggimi se ho torto, forse dipende dall'implementazione?), quindi JavaScript non è un candidato per te.)

    
risposta data 24.06.2014 - 12:06
fonte
2

"Popolare" è negli occhi di chi guarda. La lingua Rexx è molto popolare nelle comunità di mainframe e ha come primo array associativi (chiamati "variabili composte") -class language element.

    
risposta data 24.06.2014 - 13:27
fonte

Leggi altre domande sui tag