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

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

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

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

思想:

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

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,}");// 獲取人員數(shù)組
    int index = (int) (Math.random() * personnelArray.length);// 生成隨機數(shù)組索引
    // 定義包含格式參數(shù)的中獎信息
    String formatArg = "本次抽取觀眾人員:\n\t%1$s\n恭喜%1$s成為本次觀眾抽獎的大獎得主。"
        + "\n\n我們將為%1$s頒發(fā):\n\t過期的酸奶二十箱。";
    // 為中獎信息添加人員參數(shù)
    String info = String.format(formatArg, personnelArray[index]);
    resultArea.setText(info);// 在文本域顯示中間信息
  }

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

效果圖:

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

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

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

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

    Java多線程-線程的同步與鎖的問題

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

    SpringDataJPA之Specification復雜查詢實戰(zhàn)

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

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

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

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

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

    Java中的MessageFormat.format用法實例

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

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

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

    SpringBoo項目打war包的多種方式

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

    一文詳解各種ElasticSearch查詢在Java中的實現(xiàn)

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

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

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

最新評論