자바 배열 을 이용 하여 행운 의 관객 을 무 작위 로 뽑 습 니 다.
생각:
먼저 모든 관중 의 이름 을 배열 로 만 든 다음 에 배열 요소 의 총 수량 을 얻 은 다음 에 배열 요소 에서 무 작위 로 요 소 를 추출 한 다음 에 요소 의 아래 표 시 를 통 해 행운 의 관중 의 이름 을 얻 을 수 있다.
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JTextField;
import javax.swing.JTextArea;
import javax.swing.JScrollPane;
import javax.swing.border.TitledBorder;
import javax.swing.JButton;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.UIManager;
import java.awt.Color;
public class ArrayExample extends JFrame {
private JPanel contentPane;
private JTextField nameField;
private JTextArea personnelArea;
private JTextArea resultArea;
/**@auther
* Launch the application.
*/
public static void main(String[] args) {
try {
UIManager
.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");
} catch (Throwable e) {
e.printStackTrace();
}
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
ArrayExample frame = new ArrayExample();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public ArrayExample() {
setTitle("\u5229\u7528\u6570\u7EC4\u968F\u673A\u62BD\u53D6\u5E78\u8FD0\u89C2\u4F17");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 498, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JPanel panel = new JPanel();
panel
.setBorder(new TitledBorder(
null,
"\u8F93\u5165\u5728\u573A\u89C2\u4F17\u59D3\u540D\u6309\u56DE\u8F66",
TitledBorder.LEADING, TitledBorder.TOP, null,
new Color(59, 59, 59)));
panel.setBounds(10, 10, 174, 242);
contentPane.add(panel);
panel.setLayout(new BorderLayout(0, 5));
nameField = new JTextField();
nameField.addKeyListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent e) {
do_textField_keyPressed(e);
}
});
panel.add(nameField, BorderLayout.NORTH);
nameField.setColumns(10);
JScrollPane scrollPane = new JScrollPane();
panel.add(scrollPane);
personnelArea = new JTextArea();
personnelArea.setEditable(false);
scrollPane.setViewportView(personnelArea);
JPanel panel_1 = new JPanel();
panel_1.setBorder(new TitledBorder(null,
"\u9009\u53D6\u89C2\u4F17\u4EBA\u5458\uFF1A",
TitledBorder.LEADING, TitledBorder.TOP, null, new Color(59, 59,
59)));
panel_1.setBounds(183, 10, 219, 242);
contentPane.add(panel_1);
panel_1.setLayout(new BorderLayout(0, 0));
JScrollPane scrollPane_1 = new JScrollPane();
panel_1.add(scrollPane_1);
resultArea = new JTextArea();
resultArea.setEditable(false);
resultArea.setLineWrap(true);
scrollPane_1.setViewportView(resultArea);
JButton button = new JButton("\u62BD\u53D6");
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
do_button_actionPerformed(e);
}
});
button.setBounds(407, 164, 63, 25);
contentPane.add(button);
JButton button_1 = new JButton("\u9000\u51FA");
button_1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
do_button_1_actionPerformed(e);
}
});
button_1.setBounds(407, 215, 63, 25);
contentPane.add(button_1);
}
protected void do_textField_keyPressed(KeyEvent e) {
if (e.getKeyChar() != '
')//
return;
String name = nameField.getText();
if (name.isEmpty())//
return;
personnelArea.append(name + "
");//
nameField.selectAll();//
}
protected void do_button_actionPerformed(ActionEvent e) {
String perstring = personnelArea.getText();//
String[] personnelArray = perstring.split("
{1,}");//
int index = (int) (Math.random() * personnelArray.length);//
//
String formatArg = " :
\t%1$s
%1$s 。"
+ "
%1$s :
\t 。";
//
String info = String.format(formatArg, personnelArray[index]);
resultArea.setText(info);//
}
protected void do_button_1_actionPerformed(ActionEvent e) {
dispose();
}
}
효과 그림:이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.