import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.util.*; public class FSM_OddAs_EvenBs extends JFrame implements ActionListener{ private Font demoFont; private JTextArea inputStringArea; private JLabel resultLabel; private JButton actionButton; private String inputString; private LinkedList s; private boolean finalStateReached = false; public FSM_OddAs_EvenBs(){ super( "Finite State Machine" ); demoFont = new Font(Font.SANS_SERIF, Font.BOLD, 20); Container container = getContentPane(); container.setLayout( new FlowLayout() ); inputStringArea = new JTextArea("Please type your input string here."); inputStringArea.setRows(10); inputStringArea.setColumns(20); inputStringArea.setLineWrap(true); inputStringArea.setFont(demoFont); container.add( inputStringArea ); resultLabel = new JLabel(" "); resultLabel.setOpaque(true); resultLabel.setBackground(Color.yellow); resultLabel.setFont(demoFont); container.add( resultLabel ); actionButton = new JButton( "Check Input String Syntax" ); actionButton.setFont(demoFont); container.add( actionButton ); actionButton.addActionListener( this ); setSize( 460, 400 ); setVisible( true ); } public void actionPerformed( ActionEvent event ){ String inputString = inputStringArea.getText(); s = new LinkedList(); for(int i=0; i