java – ¿Como almacenar cadenas ingresadas en un arreglo y luego mostrar en consola las cadenas ingresadas?

Es mi primera vez usando esta plataforma de StackOverflow…
¿Como almacenar cadenas ingresadas en un arreglo y luego mostrar en consola las cadenas ingresadas?

//esta comentado porque se hizo con netbeens 12
//package arreglos;
//importacion de librerias
import java.util.Scanner;
//que nombre de la clase, que sea igual a Practica.java
public class Practica {
//Principal
public static void main(String() args) {
//para leer la cantidad de arreglos a leer
Scanner toche = new Scanner(System.in);
//para leer la cadena, fue necesario este 2do
Scanner toche2 = new Scanner(System.in);
//con la expectativa de que guarde todo lo que lea
String () arreglo = {};

//sale del ciclo con una condicion interna del ciclo, es decir '0'
while(true){
System.out.print("¿Cuantas Listas? ");//termina el ciclo digitando cero
int lista = toche.nextInt();//¿cuantas listas?
System.out.println("");

if( lista != 0 ){// si es distinto de cero haga lo que sigue
for (int i = 0; i < lista; i++) {//itera hasta que sea igual a lista
if( i != (lista-1)){/*nada*/}else{ lista = 0;}/*estas condiciones es para asegurar que lea 'n' veces y no sea ciclo infinito*/

System.out.print("Ingrese Cadena #"+(i+1)+" : ");
String cadena = toche2.nextLine();//escriba cualquier cosa, pero separado por espacio
arreglo = cadena.split(" ");//¿como hacer para que se acumule todo lo que le ingresa?
System.out.println("La cadena "+(i+1)+" es: "+cadena+"n");/*muestra en consola lo agregado*/
}
System.out.println("---n");
for (int i = 0; i < arreglo.length; i++) {/*este bucle lo use para conseguir el objetivo, sin exito*/
System.out.println(arreglo(i));/*muestra en pantalla lo ultimo que lee, pero no todo, es decir si leo 4 cadenas, solo muestra la ultima cadena leida*/
}
}else{
System.out.println("Ha Terminado");
break;//cuando se digita el cero entra a este else
}
}
}
}