Проблема в следующей:
в линии, где int [] previousLineArray = new int [(currentLineNumber+1)];
- Вы создаете локальный массив, который тенит вашего участника и виден только внутри if
утверждение. Затем, когда вы приходите на эту линию: nextLineArray[(nextLineCount)] = (previousLineArray[(nextLineCount-1)
Он использует ваш массив членов, который не был инициатором.