Преобразовать из JTextField строку в массив int и найти пересечение и объединение - Java
Формулировка задачи:
Есть недоделанная программа:
которая в будущем должна считывать множество из JTextField t1 u t2 и искать их пересечение и объединение.
знаю, что в java коллекциях есть метод retainAll, который ищет пересечение двух множеств. в общем что мне нужно:
хочу чтобы в
считывалось первое множество, а в
второе множество и потом выполнялось действие по нажатию соответствующих клавиш. множества вводится пользователем через пробел. с реализацией у меня пока проблемы, за java взялся не так давно, поэтому буду благодарен, если кто-нибудь впиндюрит нужный код в мою программу и пояснит, как это получилось. спасибо заранее.
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.HashSet;
import java.util.Set;
public class Reader extends JFrame{
JButton b1, b2, b3;
JLabel l1, l2, l3, l4, l5, l6;
JTextField t1, t2;
int i, k;
String a, b;
eHandler handler = new eHandler();
Set<Integer> masA=new HashSet<Integer>();
Set<Integer> masB=new HashSet<Integer>();
Set<Integer> masC=new HashSet<Integer>();
Set<Integer> masG=new HashSet<Integer>();
public Reader(String s){
super(s);
setLayout(new FlowLayout());
b1 = new JButton("Показать пересечение A и B");
b2 = new JButton("Показать объединение A и B");
b3 = new JButton("Очистить");
l1 = new JLabel("Введите первое множество:");
l2 = new JLabel("Введите второе множество:");
l3 = new JLabel("");
l4 = new JLabel("");
t1 = new JTextField(10);
t2 = new JTextField(10);
l5 = new JLabel(" ");
l6 = new JLabel(" ");
add(l1);
add(t1);
add(l2);
add(t2);
add(b1);
add(b2);
add(b3);
add(l5);
add(l3);
add(l6);
add(l4);
b3.addActionListener(handler);
b2.addActionListener(handler);
b1.addActionListener(handler);
}
public class eHandler implements ActionListener{
public void actionPerformed(ActionEvent e) {
try{
if(e.getSource()==b1){
}
if(e.getSource()==b2){
b = "dsdfdsfdsfsdfsdfsdfs";
l4.setText(b);
}
if(e.getSource()==b3){
t1.setText(null);
t2.setText(null);
l3.setText("");
l4.setText("");
}
}catch (Exception ex){ JOptionPane.showMessageDialog(null, "Введите в поле множество"); }
}
}
}Set<Integer> masA=new HashSet<Integer>();
Set<Integer> masB=new HashSet<Integer>();
Решение задачи: «Преобразовать из JTextField строку в массив int и найти пересечение и объединение»
textual
Листинг программы
Integer.parseInt(tokens[i]);