The overall intention is that whether you are using an array or a collection, the code for working with the aggregate remains the same <https://docs.groovy-lang.org/latest/html/documentation/#_working_with_arrays>.
In this particular case alas that good and noble intention does not quite work, and I wonder whether that is intentional (forgive the pun) or a mistake to be fixed in future, when there's nothing more pressing to do. > On 6. 2. 2025, at 13:30, Søren Berg Glasius <soe...@glasius.dk> wrote: > > You assign 'b' as an Array, and arrays works differently than lists. Arrays > are bound to their length, so 'a[2]' should report out of bounds as it is not > 3 elements long, whereas a list b[2] would report null > > IMO it's working as intended. > > Den tors. 6. feb. 2025 kl. 10.20 skrev OCsite <o...@ocs.cz > <mailto:o...@ocs.cz>>: >> Hi there, >> >> is this inconsistence intentional and the proper Groovy behaviour, or is >> that a bug and should I add a jira ticket? >> >> Thanks! >> >> === >> groovy:000> a=[1,2] >> ===> [1, 2] >> groovy:000> b=a as Object[] >> ===> [1, 2] >> groovy:000> a[2] >> ===> null >> groovy:000> b[2] >> ERROR java.lang.ArrayIndexOutOfBoundsException: >> Index 2 out of bounds for length 2 >> groovy:000> >> === > > > > -- > > Med venlig hilsen, > Søren Berg Glasius > > Hedevej 1, Gl. Rye, 8680 Ry > Mobile: +45 40 44 91 88 > --- Press ESC once to quit - twice to save the changes.