2014-12-23 4 views
2

У меня проблемы с помещением arrayList в Jlist. Это то, что у меня есть:Arraylist в проблемах JList

Главный класс:

package domain; 

import java.util.ArrayList; 

public static void main(String[] args) { 
    ArrayList<String> purposeCategories = new ArrayList<String>(); 
    purposeCategories.add("Behavioral"); 
    purposeCategories.add("Structural"); 
    purposeCategories.add("Creational"); 
} 

Я кладу лист декларации в моем Jframe классе и у меня есть импорт domain.main; Но он говорит, что он не признает purposeCategories ... Что я забываю?

JList list_purpose = new JList(purposeCategories.toArray()); 
    list_purpose.setBounds(50, 121, 121, 63); 
    contentPane.add(list_purpose); 

Также извиняюсь за мой английский и спасибо за ваше время: D

+1

Вы должны прочитать руководство по структуре классов в Java. Вы не можете получить доступ к локальной переменной вне метода. – August

+2

Просьба уточнить контекст вашего второго фрагмента кода. Обратите внимание, что поскольку 'purposeCategories' является локальной переменной в вашем методе' main() ', фрагмент' new JList (...) 'также должен быть в том же методе или иметь значение этой локальной переменной, переданное Это. Объясните, почему вы считаете, что код, как указано, должен работать. –

+1

И вы не должны использовать нулевые макеты .... – MadProgrammer

ответ

0

Список находится в другой области. Сделайте это в своем классе Jframe:

public MyFrame(List<String> data) { 
//now put your code for the Jlist here using the variable name "data" for your list 
} 
Смежные вопросы