Проблема добавить один массив в другой (ArrayList1.addAll(ArrayList2)

Есть два активити - MainActivity и Practice. В Practice созданы пустые 2 массива:

    static ArrayList<String> engSuperList = new ArrayList<>();
    static ArrayList<String> rusSuperList = new ArrayList<>();

При включении switch-кнопки в МэйнАктивити в эти массивы должны добавляться все элементы из массивов, заданных в MainActivity (с сохранением массивов из Practice и состояния кнопки switch в MainActivity):

    private String[] arrEngPhrases;
    private String[] arrRusPhrases;
    ArrayList<String> engPhrases;
    ArrayList<String> rusPhrases;

    @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);

            arrEngPhrases = getResources().getStringArray(R.array.englishPhrases);
            arrRusPhrases = getResources().getStringArray(R.array.russianPhrases);

            engPhrases = new ArrayList<>(Arrays.asList(arrEngPhrases));
            rusPhrases = new ArrayList<>(Arrays.asList(arrRusPhrases));


    SharedPreferences sharedPreferences = getSharedPreferences("save", MODE_PRIVATE);
            switch1.setChecked(sharedPreferences.getBoolean("value1", true));

    switch1.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    if (switch1.isChecked()) {
                        Practice.engSuperList.addAll(engPhrases);
                        Practice.rusSuperList.addAll(rusPhrases);
                       SharedPreferences.Editor editor = getSharedPreferences("save", MODE_PRIVATE).edit();
                        Gson gson = new Gson();
                        String jsonEngSuper = gson.toJson(Practice.engSuperList);
                        String jsonRusSuper = gson.toJson(Practice.rusSuperList);
                        editor.putString("english super", jsonEngSuper);
                        editor.putString("russian super", jsonRusSuper);
                        editor.putBoolean("value1", true);
                        editor.apply();
                        switch1.setChecked(true);
                    } else {
                        Practice.engSuperList.removeAll(engPhrases);
                        Practice.rusSuperList.removeAll(rusPhrases);
                        SharedPreferences.Editor editor = getSharedPreferences("save", MODE_PRIVATE).edit();
                        Gson gson = new Gson();
                        String jsonEngSuper = gson.toJson(Practice.engSuperList);
                        String jsonRusSuper = gson.toJson(Practice.rusSuperList);
                        editor.putString("english super", jsonEngSuper);
                        editor.putString("russian super", jsonRusSuper);
                        editor.putBoolean("value1", false);
                        editor.apply();
                        switch1.setChecked(false);

                }
            }
        }); 

В итоге когда переключаю switch, то ЛогКэт выдает ошибку null object reference с указанием на строку, в которой содержится Practice.engSuperList.addAll(engPhrases);

Массивы в xml заполнены верно, я уже это делал.

В чем может быть проблема?


Ответы (0 шт):