Primitívek
Az Io-ba épített primitívek objektumok, melyek többnyire C-ben
lettek megvalósítva és ábrázolásuk az adatszerkezetbe rejtett plusz
információkat igényel.
Object, List, Map, Sequence, Ranges, File,
Directory, Date, Networking, XML, Vector
Mindegyik közös
prototípusa az Object
.
Lista
A lista tetszőleges típusú objektumok rendezett kollekciója. Minden
lista prototípusa a List
.
Példák:
toDos := list("find my car", "find Continuum Transfunctioner")
==> list("find my car", "find Continuum Transfunctioner")
toDos size
==> 2
toDos append("Find a present")
==> list("find my car", "find Continuum Transfunctioner", "Find a present")
A list
az Object
metódusa,
argumentumaiból listát képez.
list(1, 2, 3, 4)
==> list(1, 2, 3, 4)
Maga a List
biztosít listakezelő és a listákon végezhető
matematikai számításokat megkönnyítő metódusokat.
list(1, 2, 3, 4) average
==> 2.5
list(1, 2, 3, 4) sum
==> 10
list(1, 2, 3) at(1)
==> 2
list(1, 2, 3) append(4)
==> list(1, 2, 3, 4)
list(1, 2, 3) pop
==> 3
list(1, 2, 3) prepend(0)
==> list(0, 1, 2, 3)
list() isEmpty
==> true
Map
A map kulcs-érték párokat tartalmaz. Minden map prototípusa a Map
.
elvis := Map clone
==> Map_0x115f580:
elvis atPut("home", "Graceland")
==> Map_0x115f580:
elvis at("home")
==> Graceland
elvis atPut("style", "rock and roll")
==> Map_0x115f580:
elvis asObject
==> Object_0x11c1d90:
home = "Graceland"
style = "rock and roll"
elvis asList
==> list(list("style", "rock and roll"), list("home","Graceland"))
elvis keys
==> list("style", "home")
elvis size
==> 2