Индекс (ы) массива остаются нулевыми после обращения и определения из других классов - PullRequest
0 голосов
/ 14 сентября 2018

Я плохо решаю эту проблему, но дело в том, что я пытаюсь сохранить несколько строк внутри массива, вот его объявление:

public static String [][][] Day = new String [ 9 ][ 5 ][ 3 ];

Он объявлен внутри класса (файла) AgendicusPanel.

Я также храню данные внутри этого массива в другом классе "AgendicusSQL".

public void SQL_Define( String name ) {
    try {

        AgendicusAgenda agenda = new AgendicusAgenda();
        String query = String.format( "SELECT * FROM Korisnici WHERE Username = '%s' LIMIT 1", name );
        rs = st.executeQuery( query );
        while( rs.next() ) {

            AgendicusPanel.mail = rs.getString( "Mail" );
            AgendicusPanel.Dream1 = rs.getString( "Dream1" );
            AgendicusPanel.Dream2 = rs.getString( "Dream2" );
            AgendicusPanel.Dream3 = rs.getString( "Dream3" );
            AgendicusPanel.ForToday1 = rs.getString( "ForToday1" );
            AgendicusPanel.ForToday2 = rs.getString( "ForToday2" );
            AgendicusPanel.ForToday3 = rs.getString( "ForToday3" );

            String tempo = null;
            int temprows;
            for( int i = 0; i < 9; i++ ) {
                for( int j = 0; j < 5; j++ ) {
                    for( int k = 0; k < 3; k++ ) {
                        tempo = String.format( "Day%d%d%d", i, j, k );
                        AgendicusPanel.Day[ i ][ j ][ k ] = rs.getString( tempo );
                        System.out.println( ( AgendicusPanel.Day[ i ][ j ][ k ] == null ) ? ("null") : ( AgendicusPanel.Day[ i ][ j ][ k ] ) + " - "+ tempo );

                    }
                }

            }

        }
        System.out.println( AgendicusPanel.Day[ 0 ][ 0 ][ 0 ] );
        System.out.println( AgendicusPanel.Day[ 0 ][ 0 ][ 1 ] );
        System.out.println( AgendicusPanel.Day[ 0 ][ 0 ][ 2 ] );
        agenda.preloadData();


    } catch( SQLException ex ) {
        System.out.println( ex );
    }
}

Я оставил эти распечатки только для того, чтобы увидеть, остаются ли значения индекса массива одинаковыми или они меняются должным образом.

После запроса значения должным образом хранятся в индексах массива, например ::

tempo = String.format( "Day%d%d%d", i, j, k );
AgendicusPanel.Day[ i ][ j ][ k ] = rs.getString( tempo );
System.out.println( ( AgendicusPanel.Day[ i ][ j ][ k ] == null ) ? 
        ("null") : ( AgendicusPanel.Day[ i ][ j ][ k ] ) + " - "+ tempo );

Печать внутри журнала консоли: Перейти к новой встрече. - Day000 2018-9-17 - День001 15:00 - День 002

После выполнения кода, приведенного выше, индексы того же массива остаются нулевыми.

null
null
null

^^^ те же индексы массива в другом классе. Если бы кто-то мог сказать мне, что я здесь делаю неправильно или в чем проблема, я был бы очень благодарен. Заранее спасибо, с наилучшими пожеланиями.

...