java数组是分配在堆上，所以改成动态分配数组大小