写随机抽号软件
package Main;
//RandomNumber.java
import java.awt.*;
import java.awt.event.*;
import java.io.IOException;
import java.util.*;
import javax.swing.*;
public class Main extends JFrame{
/**
*
*/
private static final long serialVersionUID = 1L;
JLabel MAX,MIN,NUMBER,GAP;
static JLabel result;
static JTextField max;
static JTextField min;
static JTextField number;
static JTextField gap;
JButton Count;
JTextArea Result;
Panel Left;
static Panel Right;
public static void main(String args[]){
int x = 500;
int y = 350;
JFrame F = new JFrame("RandomNumber");
//INIT
JLabel MAX =new JLabel("最大值:");
JTextField max = new JTextField("100",6);
JLabel MIN =new JLabel("最小值:");
JTextField min = new JTextField("100",6);
JLabel NUMBER = new JLabel("个数:");
JTextField number = new JTextField("1",6);
JLabel GAP = new JLabel("最小间隔:");
JTextField gap = new JTextField("10",6);
JButton Count = new JButton("抽号");
JLabel result = new JLabel("结果:");
JTextArea Result = new JTextArea(15,10);
Panel Left = new Panel();
Panel Right = new Panel();
Left.setLayout(new GridLayout(6,2,10,10));
Right.setLayout(new FlowLayout(FlowLayout.RIGHT));
F.setLayout(new FlowLayout(FlowLayout.LEFT));
//ADD-FIRST(LEFT)
Left.add(MAX);
Left.add(max);
Left.add(MIN);
Left.add(min);
Left.add(NUMBER);
Left.add(number);
Left.add(GAP);
Left.add(gap);
Left.add(Count);
Count.addActionListener(new Listener());
//ADD-FIRST(RIGHT)
Right.add(result);
Right.add(Result);
Result.setEditable(false);
//ADD-SECOND
Panel MainPanel = new Panel();
MainPanel.add(Left);
MainPanel.add(Right);
F.add(MainPanel);
//END
F.setSize(x, y);
//SetLocation
Toolkit kit = Toolkit.getDefaultToolkit();
Dimension screenSize = kit.getScreenSize();
int screenw = screenSize.width;
int screenh = screenSize.height;
F.setLocation((screenw-x)/2, (screenh-y)/2);
//SetVisible
F.setVisible(true);
F.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
static class Listener implements ActionListener {
private String end;
@Override
public void actionPerformed(ActionEvent e) {
try {
int Max = Integer.valueOf(Main.max.getText());
int Min = Integer.valueOf(Main.min.getText());
int Gap = Integer.valueOf(Main.gap.getText());
Random r = new Random();
int[] List = null;
if(Main.number.getText() != null) {
int COUNT = 0;
for(int Number = Integer.valueOf(Main.number.getText()) ; Number < 0 ; Number-- ) {
int TMP = COUNT;
if(Number == Integer.valueOf(Main.number.getText())) {
COUNT = r.nextInt(Max - Min + 1) + Min;
}else {
while(Math.abs(COUNT - TMP) <= Gap) {
COUNT = r.nextInt(Max - Min + 1) + Min;
}
List[Math.abs(Integer.valueOf(Main.number.getText()) - Number)] = COUNT;
}
}
String end = null;
for(int i: List) {
end.concat(String.valueOf(i)+" ");
}
}
Main.result.setText("结果:" + end);
} catch (Exception a) {
JOptionPane.showMessageDialog(null,a.getMessage(),"Error",JOptionPane.ERROR_MESSAGE);
try {
Thread.sleep(500);
} catch (InterruptedException e1) {
JOptionPane.showMessageDialog(null,e1.getMessage(),"Error",JOptionPane.ERROR_MESSAGE);
}
System.exit(1);
}
}
}
}
不报错