Well, bash has arrays, see man bash. The general posix shell does not work.
, eval , bash, ${!variable}. , , nroff, , , a1, a2, a3, a4 ..
posix, eval , $(($a)).
$ i=1 j=2; eval a$i=12 a$j=34
$ for i in 1 2; do echo $((a$i)); done
12
34
$
bash - ...
$ a=(56 78)
$ echo ${a[0]}
56
$ echo ${a[1]}
78
$