Массив «вне границ» [дубликат]

На этот вопрос уже есть ответ:

Что такое трассировка стека и как я могу использовать ее для отладки ошибок моего приложения? 7 ответов Как мне объявить и инициализировать массив в Java? 21 ответ

Я использую массив String [3] для хранения пользовательского ввода, полученного из 4 JTextFields. Затем я вывожу массив в текстовый файл:

String[] userInfo = new String[3];
    userInfo[0] = sourceTextField.getText();
    userInfo[1] = usernameTextField.getText();
    userInfo[2] = passwordTextField.getText();
    userInfo[3] = emailTextField.getText();
    for (String userInfo1 : userInfo) {
        try 
        {
            BufferedWriter writer = new BufferedWriter(new FileWriter("C:\\Users\\Peace Infinity\\Desktop\\[programming]Projects\\DataFiles\\PasswordRepository.txt", true));
            String s;
            s = userInfo1;
            writer.write(s + " ");
            writer.flush();
        }catch (IOException ex) 
        {
            Logger.getLogger(ADD_dialogBox_v1.class.getName()).log(Level.SEVERE, null, ex);
            JOptionPane.showMessageDialog(null, "Error processing file!");
        }
    }

Может кто-нибудь сказать мне, почему я получаю исключение "индекс массива за пределами границ"? Спасиб

Ответы на вопрос(3)

Ваш ответ на вопрос