¿Cómo puedo cambiar la longitud de una matriz? [duplicar

Esta pregunta ya tiene una respuesta aquí:

Tamaños de matriz dinámica de Java? 18 respuestas

Así que me asignaron un proyecto en el que tengo una matriz y, a medida que el usuario coloca elementos en esta matriz, tendrá que duplicar su longitud una vez que se llene. No se nos permite usar listas de matrices ni nada en la interfaz de colecciones. Lo que estaba tratando de hacer era crear una nueva matriz una vez que la anterior estaba llena, y luego copiaría los valores a la nueva matriz. El problema es que no sé cuántas veces tendré que hacer una nueva matriz, así que me preguntaba cómo solucionar esto.