Java 简单抽奖功能界面实现(Random类的使用)

要求:定义文本框添加姓名,将姓名存储并且在界面中可见,点击抽奖按钮进行抽奖并输出最后的中奖得主。
关于抽奖当然需要用到随机数的生成函数,在Java中Random 的使用合适比较简单的;
有两种不同的Random方法的使用,其中一种是Math中的random。
该方法生成的是0~1之间的浮点数,如果要生成整数类型的数字,可以乘一个整数,强制转换为整数类型。
int n = (int)(Math.random()*x);
还有一个是Random 类,使用时间需要先定义相关对象,之后在用对象调用方法生成随机数。例: 
Random random = new Random();
int n = random.nextInt(50);
这里生成的数字是0~50之间的整数,不包含50。

下面是总体代码:

import java.awt.EventQueue;
import java.awt.Font;
import java.awt.List;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.util.ArrayList;
import java.util.Random;

import javax.swing.JDesktopPane;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.JButton;

public class Lottery extends JFrame {
   
    static JTextField textField;
    
  • 8
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
实现一个滚动界面抽奖,你可以使用Java的Swing库。下面是一个简单的示例代码,演示了如何创建一个滚动界面抽奖的程序: ```java import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Random; public class LotteryApp extends JFrame implements ActionListener { private JTextArea textArea; private JButton startButton; private Timer timer; private Random random; public LotteryApp() { setTitle("滚动界面抽奖"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); textArea = new JTextArea(10, 20); textArea.setEditable(false); JScrollPane scrollPane = new JScrollPane(textArea); startButton = new JButton("开始抽奖"); startButton.addActionListener(this); Container container = getContentPane(); container.setLayout(new BorderLayout()); container.add(scrollPane, BorderLayout.CENTER); container.add(startButton, BorderLayout.SOUTH); pack(); setLocationRelativeTo(null); random = new Random(); } @Override public void actionPerformed(ActionEvent e) { if (e.getSource() == startButton) { if (timer != null && timer.isRunning()) { timer.stop(); startButton.setText("开始抽奖"); } else { timer = new Timer(100, new ActionListener() { @Override public void actionPerformed(ActionEvent e) { int number = random.nextInt(100); // 这里可以根据需要修改范围 textArea.setText(String.valueOf(number)); } }); timer.start(); startButton.setText("停止抽奖"); } } } public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { @Override public void run() { new LotteryApp().setVisible(true); } }); } } ``` 这个程序使用了JFrame作为主窗口容器,其中包括一个JTextArea用来显示抽奖结果,一个JScrollPane用来给JTextArea提供滚动功能,以及一个JButton用来控制抽奖的开始和停止。抽奖结果是通过定时器每隔一段时间生成一个随机数来实现的。 你可以根据需要修改抽奖的范围和滚动界面的布局。运行这段代码,点击"开始抽奖"按钮即可开始滚动界面抽奖
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值