欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java利用數(shù)組隨機(jī)抽取幸運(yùn)觀眾

 更新時(shí)間:2019年05月08日 08:35:57   作者:優(yōu)勝美地  
這篇文章主要為大家詳細(xì)介紹了java利用數(shù)組隨機(jī)抽取幸運(yùn)觀眾,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了java利用數(shù)組隨機(jī)抽取幸運(yùn)觀眾的具體代碼,供大家參考,具體內(nèi)容如下

思想:

首先將所有觀眾姓名生成數(shù)組,然后獲取數(shù)組元素的總數(shù)量,再在數(shù)組元素中隨機(jī)抽取元素的下標(biāo),根據(jù)元素的下標(biāo)得到幸運(yùn)觀眾的名字。

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())// 如果文本框沒(méi)有字符串不做處理
      return;
    personnelArea.append(name + "\n");// 把輸入人名與回車符添加到人員列表
    nameField.selectAll();// 選擇文本框所有字符
  }

  protected void do_button_actionPerformed(ActionEvent e) {
    String perstring = personnelArea.getText();// 獲取人員列表文本
    String[] personnelArray = perstring.split("\n{1,}");// 獲取人員數(shù)組
    int index = (int) (Math.random() * personnelArray.length);// 生成隨機(jī)數(shù)組索引
    // 定義包含格式參數(shù)的中獎(jiǎng)信息
    String formatArg = "本次抽取觀眾人員:\n\t%1$s\n恭喜%1$s成為本次觀眾抽獎(jiǎng)的大獎(jiǎng)得主。"
        + "\n\n我們將為%1$s頒發(fā):\n\t過(guò)期的酸奶二十箱。";
    // 為中獎(jiǎng)信息添加人員參數(shù)
    String info = String.format(formatArg, personnelArray[index]);
    resultArea.setText(info);// 在文本域顯示中間信息
  }

  protected void do_button_1_actionPerformed(ActionEvent e) {
    dispose();
  }
}

效果圖:

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Springboot WebJar打包及使用實(shí)現(xiàn)流程解析

    Springboot WebJar打包及使用實(shí)現(xiàn)流程解析

    這篇文章主要介紹了Springboot WebJar打包及使用實(shí)現(xiàn)流程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下的相關(guān)資料
    2020-08-08
  • Java多線程-線程的同步與鎖的問(wèn)題

    Java多線程-線程的同步與鎖的問(wèn)題

    線程的同步是為了防止多個(gè)線程訪問(wèn)一個(gè)數(shù)據(jù)對(duì)象時(shí),對(duì)數(shù)據(jù)造成的破壞。本篇文章主要介紹了Java多線程-線程的同步與鎖的問(wèn)題,有興趣的可以了解一下。
    2016-11-11
  • SpringDataJPA之Specification復(fù)雜查詢實(shí)戰(zhàn)

    SpringDataJPA之Specification復(fù)雜查詢實(shí)戰(zhàn)

    這篇文章主要介紹了SpringDataJPA之Specification復(fù)雜查詢實(shí)戰(zhàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • java數(shù)據(jù)結(jié)構(gòu)基礎(chǔ):稀疏數(shù)組

    java數(shù)據(jù)結(jié)構(gòu)基礎(chǔ):稀疏數(shù)組

    今天帶大家了解一下Java稀疏數(shù)組的相關(guān)知識(shí),文中有非常詳細(xì)的介紹及代碼示例,對(duì)正在學(xué)習(xí)java的小伙伴們有很好地幫助,需要的朋友可以參考下
    2021-08-08
  • IDEA 顯示Run Dashboard窗口的2種方式(推薦)

    IDEA 顯示Run Dashboard窗口的2種方式(推薦)

    這篇文章主要介紹了IDEA 顯示Run Dashboard窗口的2種方式,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-08-08
  • Java中的MessageFormat.format用法實(shí)例

    Java中的MessageFormat.format用法實(shí)例

    這篇文章主要介紹了Java中的MessageFormat.format用法實(shí)例,本文先是講解了MessageFormat的語(yǔ)法,然后給出了多個(gè)操作實(shí)例,需要的朋友可以參考下
    2015-06-06
  • hibernate框架環(huán)境搭建具體步驟(介紹)

    hibernate框架環(huán)境搭建具體步驟(介紹)

    下面小編就為大家?guī)?lái)一篇hibernate框架環(huán)境搭建具體步驟(介紹)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-06-06
  • SpringBoo項(xiàng)目打war包的多種方式

    SpringBoo項(xiàng)目打war包的多種方式

    在idea中,經(jīng)常會(huì)對(duì)web項(xiàng)目進(jìn)行打jar包或者war包,jar包在Java環(huán)境中運(yùn)行,war包在Tomcat服務(wù)器中跑,對(duì)于打war包有多種方式,一下介紹3鐘方式,需要的朋友可以參考下
    2024-06-06
  • 一文詳解各種ElasticSearch查詢?cè)贘ava中的實(shí)現(xiàn)

    一文詳解各種ElasticSearch查詢?cè)贘ava中的實(shí)現(xiàn)

    Elasticsearch是用Java開(kāi)發(fā)的,并作為Apache許可條款下的開(kāi)放源碼發(fā)布,是當(dāng)前流行的企業(yè)級(jí)搜索引擎,下面這篇文章主要給大家介紹了關(guān)于各種ElasticSearch查詢?cè)贘ava中實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下
    2023-11-11
  • IDEA連接postgressql數(shù)據(jù)庫(kù)操作

    IDEA連接postgressql數(shù)據(jù)庫(kù)操作

    這篇文章主要介紹了IDEA連接postgressql數(shù)據(jù)庫(kù)操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-08-08

最新評(píng)論