Yes, but you can make the keys sort of multi-dimensional: someArray [a,b,c], so for some purposes this works just as well.

In fact (note to shari), depending on your particular application, you may find it more efficient to have an array with 300 * 1000 elements than to have an array with 300 elements of 1000 items each. Though rev's chunk expressions are extremely efficient, accessing the thousandth item in a list is generally going to be slower than accessing an array element, even in a big array.

Put this in a button script:

on mouseUp
   if the optionkey is down then
      makeArrayWithItems
   else
      makeArrayNoItems
   end if
end mouseUp


on makeArrayWithItems
   repeat 300
      add 1 to c
      repeat 1000
         put random(125676) & comma after sArray[c]
      end repeat
   end repeat

   put the millisecs into st
   repeat 10000
      put random(300) into c
      put 900 into d
      get item d of tArray[c]
   end repeat
   put the millisecs - st
end makeArrayWithItems

on makeArrayNoItems
   repeat 300
      add 1 to c
      put 0 into d
      repeat 1000
         add 1 to d
         put random(125676) into sArray[c,d]
      end repeat
   end repeat

   put the millisecs into st
   repeat 10000
      put random(300) into c
      put 900 into d
      get tArray[c,d]
   end repeat
   put the millisecs - st
end makeArrayNoItems

on my machine, though it seems to take a little longer to build the no-items array than the with-items array, access is nearly 4 times faster for the no-items array. The bigger the data, the more pronounced then effect (try making it 500 x 2000, or 1000 x 5000).

Of course it's unlikely that you'll be accessing the 900th+ item all the time, but it illustrates a worst case. Accessing the 1st item every time produces a tie, so on average, the no-items array is going to be faster.

Best,

Mark

On 18 Nov 2007, at 01:56, Petrides, M.D. Marian wrote:

Speaking of arrays... Am I correct in understanding that Rev only supports one dimensional arrays or am I misreading the dox?

On Nov 17, 2007, at 7:54 PM, Mark Smith wrote:


_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to