Создаю простой массив "в кнопке":
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
int n = Integer.parseInt(jTextField1.getText());
int m = Integer.parseInt(jTextField2.getText());
int[][] a= new int[n][m];
Random rn= new Random();
for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
a[i][j]=rn.nextInt();
//пытаюсь вывести в jTable1
jTable1 = new JTable(a);
}
Естественно ошибка.
В интернете есть примеры, с классами. Но мне нужна именно без классов.
Например в C# просто можно записать:
dataGridView1.RowCount = n;
dataGridView1.ColumnCount = m;
И в цикле перебрать:
dataGridView1[j, i].Value = a[i, j];
Есть ли подобная альтернатива в Java без лишних классов и буквально в несколько строк?
Примечание:
Нашел решение сам :))
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt)
{
int n = Integer.parseInt(jTextField1.getText());
int m = Integer.parseInt(jTextField2.getText());
Integer[][] a= new Integer[n][m];
Random rn= new Random();
for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
a[i][j]=rn.nextInt(21)-10;
jTable1.setModel(new javax.swing.table.DefaultTableModel(a,new String[m]));
}
И вот несколько методов:
Создание пустой таблицы NxM:
jTable1.setModel(new javax.swing.table.DefaultTableModel(new Integer[n][m],new String[m]));
Запись значений в ячейку:
jTable1.setValueAt(<значение>,<столбец>, <строка>);
Чтение значения:
переменная = jTable1.getValueAt(<столбец>, <строка>);
RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.
Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.
Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.