I know that when I initialize a char array: I have to
char[] b= new char[5];
or
char[] b= new char[5]({1,2,3,4,5}); >
char[] b= new char[5]({1,2,3,4,5});
That's is simply design of Java. ArrayList and Arrays are two different things. No need to be same declaration.
Java
ArrayList
Arrays