编写图形界面的程序,接收用户输入的一个字符串和一个字符,将字符串中出现的所有改字符删除,打印输出新生成的结果字符串。
[code="java"]import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.Collections;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class ChangeStringForm extends JFrame {
JTextField stringField = new JTextField();
JTextField charField = new JTextField(4);
JButton convertButton = new JButton("convert");
JTextField resultField = new JTextField();
public ChangeStringForm() {
JPanel inputPanel = new JPanel();
JPanel resultPanel = new JPanel();
this.getContentPane().setLayout(new GridLayout(3, 1));
this.getContentPane().add(inputPanel);
this.getContentPane().add(convertButton);
this.getContentPane().add(resultPanel);
inputPanel.setLayout(new BorderLayout());
inputPanel.add(stringField, BorderLayout.CENTER);
inputPanel.add(charField, BorderLayout.EAST);
stringField.setToolTipText("Input a string");
charField.setToolTipText("Input a char");
resultPanel.setLayout(new BorderLayout());
resultPanel.add(resultField, BorderLayout.CENTER);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setSize(150, 200);
this.setLocation(150, 200);
this.setResizable(false);
convertButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String str = stringField.getText();
String charStr = charField.getText();
if (charStr.length() != 1) {
JOptionPane.showMessageDialog(null,
"The length of char should be 1!");
return;
}
// convert
// get char
char c = charStr.charAt(0);
// convert string to chars
char[] chars = str.toCharArray();
StringBuffer sb = new StringBuffer();
for (char eachchar : chars) {
if (eachchar != c)
sb.append(eachchar);
}
resultField.setText(sb.toString());
}
});
}
public static void main(String args[]) {
ChangeStringForm form = new ChangeStringForm();
form.show();
}
}[/code]