2013-12-14 4 views
0

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

String[] val = new String[100]; 
    for (int j = 0; j<val.length; j++) 
    { 
     CmbSize.setModel(new DefaultComboBoxModel(val)); 
    } 

Однако это не работает. Поле со списком дает 100 пустое пространство, в котором ничего нет. Кто-нибудь может мне помочь?

+3

Ну, вы не заселяете свой массив, чтобы начать с ... это всего лишь 100 нулевых элементов. Что вы ожидали увидеть там? И почему вы устанавливаете модель 100 раз? –

+1

1) Чтобы лучше помочь, опубликуйте [SSCCE] (http://sscce.org/). 2) Не добавляйте тег для вашей среды IDE, если этот вопрос не является * о * IDE. Я добавил еще два подходящих тега. 3) Пожалуйста, ознакомьтесь с общепринятыми [соглашениями по именованию Java] (http://java.sun.com/docs/books/jls/second_edition/html/names.doc.html#73307) (в частности, для имен, используемых для имен) для класса , методы и имена атрибутов и использовать их последовательно. –

+1

[Для всех ссылочных типов (§4.3) значение по умолчанию равно null] (http://docs.oracle.com/javase/specs/jls/se7/html/jls-4.html#jls-4.12.5) , – Maroun

ответ

4

У вас есть правильная идея - но вы просто создаете новую пустую модель 100 раз.

String[] val = new String[100]; 
CmbSize.setModel(new DefaultComboBoxModel(val)); 

Вы создали пустой массив с 100 элементами в нем, и вы добавили его в модель без необходимости в цикле.

То, что вам нужно, это цикл, но для заполнения значения val.

String[] val = new String[100]; 

for (int j = 0; j<val.length; j++) { 
    val[j] = String.valueOf(j); 
} 

CmbSize.setModel(new DefaultComboBoxModel(val)); 

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

Смежные вопросы