I think you will find the performance neglible.
a switch/case & if/else will create code like
move AX,VariableA
compare AX, ConstantA
jumpnotequal Compare2
move ax, Data1
jump done
Compare2:
compare AX, ConstantB
jumpnotequal, Compare3
move ax, Data2
jump done
...
...
while an array system will reuse the comparison routine
move AX, VariableA
MOV DX, ArrayConstant
move IX, 0
Compare1:
Compare [DX+IX], AX
jumpequal done
Increment IX
jump Compare1
done:
.
.
.
Although the use of the array shortens the amount of code produced, it does have the slight overhead of the math to calculate the position of the next element. The code snippets are pseudo code, and very simplified, but it's just to give an idea of what is produced by the interpreter/compiler.
For myself, I prefer using an array system. Because it keeps code more compact. When you been around for awhile and see if/else...switch/case statements hitting 30-50 blocks. and trying to fix/update the code becomes a chore.
My rule of thumb is never to use more than 3-5 if/else...switch/case statements. At this point consider using an array system.
New coders often find using arrays difficult so postpone learning them.
Anyways good luck on yer coding