-2
Я создал arraylist в одном классе и после нажатия на JButton и перехода на другую панель и другой класс, я хочу иметь доступ к ней и генерировать случайное число. Как я могу это сделать?Как я могу получить доступ к ArrayList из другого класса?
ArrayList<Integer> hiraganaArray = new ArrayList<Integer>();
OCheckBox.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent e) {
if(e.getStateChange() == ItemEvent.SELECTED) {
hiraganaArray.add(1);
hiraganaArray.add(2);
hiraganaArray.add(3);
hiraganaArray.add(4);
hiraganaArray.add(5);
}
else {
hiraganaArray.removeAll(Arrays.asList(1));
hiraganaArray.removeAll(Arrays.asList(2));
hiraganaArray.removeAll(Arrays.asList(3));
hiraganaArray.removeAll(Arrays.asList(4));
hiraganaArray.removeAll(Arrays.asList(5));
}
}
startButton = new JButton("Start");
startButton.setPreferredSize(new Dimension(100, 40));
gbc.gridx = 3;
gbc.gridy = 13;
add(startButton, gbc);
startButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
layout.show(panelCont, "6");
}
});
Это работает очень хорошо, когда я добавить
System.out.println(hiraganaArray.get(r.nextInt(hiraganaArray.size())));
к JButton в Action Listener, но тот же код не работает, когда используется в другом классе.
Вы действительно должны прочитать о том, что статическая переменная. Ваше «решение» может создать для вас массу проблем. –
Кажется, что это работает без каких-либо проблем. Можете ли вы уточнить? – PaladinButters