Как записать массив в таблицу что бы в дальнейшим с ним работать?

Помогите с задачей. Нужно создать кнопку, которая считает данные(массив). После чего он изобразится в таблице. Плюс должно вывести номер строки, в которой все элементы равны и номер столбца, в которого все элементы четные.

Файл:

2 2 2
4 5 4
7 8 6 

Я создал окно с кнопкой, считываю файл(вроде правильно). Вывожу на экран. Но не знаю как занести в таблицу так как впервые с этим работаю.

В коде я создал массив и занес в таблицу как пример:

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;
import javax.swing.*;

public class  LabSixSecond extends JPanel implements ActionListener {

    private static final long serialVersionUID = 1L;
    private JFrame wnd;
    private float w, q, p;
    private int i;
    private JButton start, stop, apply;
    private JLabel nl, wl;
    private JTextField ntf, wtf;
    JTextArea txaSome = new JTextArea();
    JButton btnSome = new JButton("Load file");
    Comparable[] A=new Comparable[i];
    final String THE_FILE = "D:\\IntelliJ IDEA Community Edition 2019.3.2\\works\\src\\Array6.txt"; // адрес к читаемому файлу
    private static List<Character> chars = new ArrayList<Character>();

    public static void main(String[] args) {
        new LabSixSecond();
    }

    private Object[][] array = new String[][] {{ "2" , "2", "2" },
            { "3"  , "4", "5" },
            { "7", "6" , "8" }};
    private Object[] headers = new String[] {"x0", "x1", "x2"};
    LabSixSecond(){
        wnd = new JFrame("Array");
        wnd.setLayout(null);
        wnd.setSize(500, 500);
        wnd.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setBounds(100, 50, 300, 300);
        btnSome.addActionListener(new ActionListener() { //обработчик события
                                      public void actionPerformed(ActionEvent ae) {


                                          File file = new File(THE_FILE);

                                         //-------------------------------------------------
                                          try(FileReader reader = new FileReader(file))
                                          {
                                              char[] buf = new char[256];
                                              int c;
                                              while((c = reader.read(buf))>0){

                                                  if(c < 256){
                                                      buf = Arrays.copyOf(buf, c);
                                                  }
                                                  System.out.print(buf);
                                                  txaSome.setText(String.valueOf(buf));
                                              }
                                          }
                                          catch(IOException ex) {

                                              System.out.println(ex.getMessage());
                                          }


                                          }
                                      }


        );
        JTable table1 = new JTable(array,headers);
        Box contents = new Box(BoxLayout.Y_AXIS);
        contents.add(new JScrollPane(table1));
        wnd.setContentPane(contents);
        setSize(500, 400);

        wnd.add(table1);
        wnd.add(txaSome);
        wnd.add(btnSome);

        setLayout(new FlowLayout());

        wnd.setVisible(true);
    }

    @Override
    protected void paintComponent(Graphics g) {
        super.paintComponent(g);
        Graphics2D g2d = (Graphics2D) g;
        g2d.setColor(Color.WHITE);
        g2d.fillRect(0, 0, getWidth(), getHeight());
    }
    @Override
    public void actionPerformed(ActionEvent e) {

}
}

Так же у меня фрагменты кода который я написал для дальнейших действий с массивом:

for (int i = 0; i < myArray.length; i++) {
            k = 1;
            for (int j = 0; j < myArray[i].length - 1; j++) {

                if (myArray[i][j] == myArray[i][j + 1]) {
                    k += 1;
                    if (k == myArray[i].length) {
                        System.out.println("element:" + myArray[i][j]);
                        System.out.println("# of row:" + i);

                    }
                }

            }
        }

        for (int i = 0; i < myArray.length; i++) {
            k = 1;
            for (int j = 0; j < myArray[i].length; j++)

                if (myArray[j][i] % 2 != 0)
                    k = 0;

                     if (k == 1) {
                             System.out.println("# of column:" + i);
                              }

        }

Помогите разобраться и решить эту задачу пожалуйста.

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