import java.io.BufferedReader;
import java.io.FileReader;


public class ArrayDoubler {
	public static void main(String[] args) {
		String[] array = new String[10];
		
		try {
			System.out.println("Initial array length: " + array.length);
			BufferedReader in = new BufferedReader(new FileReader("songlist.txt"));
			String next = null;
			int count = 0;
			while ((next = in.readLine()) != null) {
				if (count == array.length) {
					array = doubleArrayLength(array);
				}
				array[count] = next;
				count++;
			}
			System.out.println("Final array length: " + array.length);
			in.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	public static String[] doubleArrayLength(String[] array) {
		String[] tempArray = new String[array.length * 2];
		
		for (int i = 0; i < array.length; i++) {
			tempArray[i] = array[i];
		}
		
		return tempArray;
	}
	
	public static String[] doubleArrayLength2(String[] array) {
		String[] tempArray = new String[array.length * 2];
		
		System.arraycopy(array, 0, tempArray, 0, array.length);
		
		return tempArray;
	}
}

