Hirdetés

Új hozzászólás Aktív témák

  • floatr
    veterán

    Az a baj, hogy nem igazán arra gondoltam, amit írtál.
    Lehet, hogy a nyelvek oldaláról ez a helyzet, viszont engem pusztán az zavar, hogy nincs olyan tömb, amihez utólag, másolás nélkül tudnék hozzáadni újabb elemeket. Kicsit a "kőkorban" érzem magam miatta, amikor még PL/I-ben, Clipperben programozgattam.
    Az egyéb objektum típusok más kategóriába tartoznak.
    Persze nem lenne rossz, ha pl. egy ListArray elemeit is lehetne indexelni (mégiscsak rövidebb a [...] hivatkozást leírni, mint a .get(...)-t), de azért ez mégis másik történet.

    Amit nem látsz más nyelvekben az az, hogy hogyan van ténylegesen implementálva a "tömb". Javaban az ArrayList és tsai alacsony szintig követhetően implementált dinamikus tömb. Hogy most beírhatsz-e olyat, hogy list[2578] = "foo"; az egy dolog, a hátterében működhet sokminden:
    -- pl operátor overloading, ami egy saját metódust hív, amikor [] operátort talál
    -- egy automatikus memóriafoglalás a háttérben 2578 + buffer méretig
    -- máshol egy hash-alapú map jön létre

    Ez az egész rajtad áll vagy bukik, de elvárni sok automatizmust a nyelvtől azt fogja eredményezni, hogy vagy a fordító, vagy a végrehajtás lassú lesz. Az meg a másik, hogy sok értelmét nem látom egy ilyen műveletnek, bár lehetnek specifikus esetek nyilván; ide specifikus ötletek kellenek, pl. treemap.

Új hozzászólás Aktív témák