Java编程 在窗口输入1个整数,通过单选框选择是计算平方值或者阶乘,输出计算结果.

问题描述:

Java编程 在窗口输入1个整数,通过单选框选择是计算平方值或者阶乘,输出计算结果.
如果输入数据不合法,请给出错误提示
能给个程序吗 不太会编啊··
1个回答 分类:综合 2014-09-26

问题解答:

我来补答
我用的是下拉框
import java.awt.event.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.swing.*;
public class TestRadioButton extends JFrame implements ActionListener{
private JButton objT1;
private JLabel mobjlLabelTime;
private JTextField mobjS;
private JLabel objlabTemp;
private JComboBox mobjComboBox = null;
private String eL = "^[1-9]\\d*$";
public TestRadioButton() {
this.setResizable(false);
setSize(300,200);
mobjlLabelTime = new JLabel("输入值:");
mobjlLabelTime.setBounds(10, 45, 60, 30);
add(mobjlLabelTime);

mobjS = new JTextField("10");
mobjS.setBounds(60, 50, 50, 20);
add(mobjS);

String[] strBox = {"平方", "阶乘"};
mobjComboBox = new JComboBox(strBox);
mobjComboBox.setBounds(120, 50, 80, 20);
add(mobjComboBox);

objlabTemp = new JLabel("结果:");
objlabTemp.setBounds(10, 80, 300, 20);
add(objlabTemp);

objT1 = new JButton("计算");
objT1.setBounds(220, 40, 60, 30);
add(objT1);

objT1.addActionListener(this);

// 设置关闭程序
this.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
public static void main(String[] args) {
TestRadioButton objPane = new TestRadioButton();
objPane.add(new JPanel());
objPane.setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e) {
if (objT1 == e.getSource()) {
String string= mobjComboBox.getSelectedItem().toString();
String strValue = mobjS.getText();

Pattern p = Pattern.compile(eL);
Matcher m = p.matcher(strValue);
boolean b = m.matches();

if (b) {

int ivalue = Integer.parseInt(strValue);

if ("平方".equals(string)) {
string = "结果:" + ivalue*ivalue;
} else {
int isum = 1;
for (int i = 2; i
 
 
展开全文阅读
剩余:2000