Я тут коекакой эксперимент провел, ато очень интересно стало коечто, думаю тема какрас то что надо.

Global TestMassiv%[10000],Tmp1%,Tmp2%,Tmp3%,bnkTest
For tm%=0 To 10000
TestMassiv[tm%]=tm%
Next
Dim TestMassiv2(10000)
For tm%=0 To 10000
TestMassiv2(tm%)=tm%
Next
Global ttm%[3]
Type test
Field ID%
; Field RandNum%
End Type
For tm%=0 To 10000
tt.test = New test
tt\ID%=tm%
; tt\RandNum=Rand(1,10000)
If tm%=500 Then ttm[1]=Handle tt
If tm%=5000 Then ttm[2]=Handle tt
If tm%=10000 Then ttm[3]=Handle tt
Next
bnkTest=CreateBank(20002)
For tm%=0 To 10000
PokeInt bnkTest,(tm%*2),tm%
Next
Repeat
If KeyHit(2) Then Test1()
If KeyHit(3) Then Test2()
If KeyHit(4) Then Test3()
If KeyHit(5) Then Test4()
If KeyHit(6) Then Test5()
Delay 1
If KeyHit(1)
FreeBank bnkTest
End
EndIf
Forever
Function Test1()
Local time%
time%=MilliSecs()
For tm%=0 To 1000000
Tmp1%=TestMassiv[500]
Tmp2%=TestMassiv[5000]
Tmp3%=TestMassiv[10000]
Next
time%=MilliSecs()-time%
Print time%
End Function
Function Test2()
Local time%
time%=MilliSecs()
For tm%=0 To 1000000
Tmp1%=TestMassiv2(500)
Tmp2%=TestMassiv2(5000)
Tmp3%=TestMassiv2(10000)
Next
time%=MilliSecs()-time%
Print time%
End Function
Function Test3()
Local time%
time%=MilliSecs()
For tm%=0 To 1000000
p.test=Object.test(ttm[1])
Tmp1%=p\ID%
p.test=Object.test(ttm[2])
Tmp2%=p\ID%
p.test=Object.test(ttm[3])
Tmp3%=p\ID%
Next
time%=MilliSecs()-time%
Print time%
End Function
Function Test4(); на 2 нолика меньше, ибо очень тупит)))
Local time%
time%=MilliSecs()
For tm%=0 To 10000
For p.test = Each test
If p\ID%=500
Tmp1%=p\ID%
EndIf
If p\ID%=5000
Tmp2%=p\ID%
EndIf
If p\ID%=10000
Tmp3%=p\ID%
EndIf
Next
Next
time%=MilliSecs()-time%
Print time%
End Function
Function Test5()
Local time%
time%=MilliSecs()
For tm%=0 To 1000000
Tmp1%=PeekInt(bnkTest,1000)
Tmp2%=PeekInt(bnkTest,10000)
Tmp3%=PeekInt(bnkTest,19998)
Next
time%=MilliSecs()-time%
Print time%
End Function
Витоге вышло
Test1 - 7 мс - массив с квадратными скобками
Test2 - 7 мс - массив с круглыми скобками
Test3 - 77 мс - обращение к конкретным типам через object
Test4 - 1800 мс (притом что во 100 раз меньше повторов сделал, но имхо думаю невыгодный способ при большом количестве данных) - перечисление типов.....
Test5 - 22 мс - чтение с определенных мест банка