日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java数组随机抽取分布均匀_java利用数组随机抽取幸运观众

發布時間:2023/12/15 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java数组随机抽取分布均匀_java利用数组随机抽取幸运观众 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文實例為大家分享了java利用數組隨機抽取幸運觀眾的具體代碼,供大家參考,具體內容如下

思想:

首先將所有觀眾姓名生成數組,然后獲取數組元素的總數量,再在數組元素中隨機抽取元素的下標,根據元素的下標得到幸運觀眾的名字。

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() != '\n')// 不是回車字符不做處理

return;

String name = nameField.getText();

if (name.isEmpty())// 如果文本框沒有字符串不做處理

return;

personnelArea.append(name + "\n");// 把輸入人名與回車符添加到人員列表

nameField.selectAll();// 選擇文本框所有字符

}

protected void do_button_actionPerformed(ActionEvent e) {

String perstring = personnelArea.getText();// 獲取人員列表文本

String[] personnelArray = perstring.split("\n{1,}");// 獲取人員數組

int index = (int) (Math.random() * personnelArray.length);// 生成隨機數組索引

// 定義包含格式參數的中獎信息

String formatArg = "本次抽取觀眾人員:\n\t%1$s\n恭喜%1$s成為本次觀眾抽獎的大獎得主。"

+ "\n\n我們將為%1$s頒發:\n\t過期的酸奶二十箱。";

// 為中獎信息添加人員參數

String info = String.format(formatArg, personnelArray[index]);

resultArea.setText(info);// 在文本域顯示中間信息

}

protected void do_button_1_actionPerformed(ActionEvent e) {

dispose();

}

}

效果圖:

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持聚米學院。

總結

以上是生活随笔為你收集整理的java数组随机抽取分布均匀_java利用数组随机抽取幸运观众的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。