一个抽奖程序:用ArrayList类和random类

import java.awt.*;

import javax.swing.*;

import java.awt.event.;

import java.util.
;

import java.util.List;

public class jRandom extends JFrame {

private JFrame frame;

private JButton startBUtton;

public jRandom() {
makeFrame();
frame.pack();
frame.setVisible(true);
frame.setSize(400, 215);
frame.setLocation(550, 350);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
} private void makeFrame() { frame = new JFrame(" 抽个奖吧!");
ImageIcon imageIcon0 = new ImageIcon("t/1.png");
frame.setIconImage(imageIcon0.getImage());
Container contentPane = frame.getContentPane();
startBUtton = new JButton();
ImageIcon imageIcon1 = new ImageIcon("t/3.png");
ImageIcon imageIcon2 = new ImageIcon("t/4.png");
ImageIcon imageIcon3 = new ImageIcon("t/5.png");
startBUtton.setIcon(imageIcon1);// 设置按钮形状
startBUtton.setRolloverIcon(imageIcon2);// 设置鼠标滑过按钮的图像
startBUtton.setPressedIcon(imageIcon3);// 设置鼠标按下按钮的形状
startBUtton.setMargin(new Insets(0, 0, 0, 0)); // 设置按钮边框与边框内容之间的像素数
startBUtton.setBorderPainted(false); // 不绘制边框 // 按钮事件监听
startBUtton.addActionListener(new ActionListener() { @Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
makechoujiang();
}
});
contentPane.add(startBUtton, BorderLayout.CENTER); } private void makechoujiang() {
double baseNum = 0.50;
String product = "100元,200元,500元,1000元";
String num = "30,20,5,3";
String[] p = product.split(",");
String[] n = num.split(",");
Random ran = new Random();
double base = ran.nextDouble();
if (base > baseNum) {
ImageIcon imageIcon = new ImageIcon("t/2.png");
JOptionPane.showMessageDialog(frame, "请您继续努力!", "抽奖结果",
JOptionPane.PLAIN_MESSAGE, imageIcon);
return;
} List<String> list = new ArrayList<String>();
for (int i = 0; i < p.length; i++) {
for (int j = 0; j < Integer.parseInt(n[i]); j++) {
list.add(p[i]);
}
}
// 打乱奖池数据
int l = ran.nextInt(list.size());
ImageIcon imageIcon = new ImageIcon("t/1.png");
JOptionPane.showMessageDialog(frame, "恭喜您中了" + list.get(l) + "哟!!",
"抽奖结果", JOptionPane.PLAIN_MESSAGE, imageIcon); } public static void main(String[] args) {
// TODO Auto-generated method stub
new jRandom();
}

}

程序界面如下:

java第六次作业的更多相关文章

  1. 1903021116—吉琛—Java第六周作业—类的定义

    项目 内容 课程班级博客链接 19信计班 这个作业要求链接 第六周作业链接 java面向对象的概念和定义 博客名称 学号-姓名-Java第六周作业-题目自拟 要求 每道题要有题目,代码(使用插入代码, ...

  2. Java第六次作业--异常处理和Java类集

    Deadline: 2017-5-4 23:00 一.学习要点 认真看书并查阅相关资料,掌握以下内容: 理解Java的异常处理机制 掌握捕获异常和声明抛出异常的方法 掌握List接口的实现类Array ...

  3. 1903021121—刘明伟—Java第六周作业—java类

    项目   内容 课程班级博客链接  19信计班(本) 作业要求链接 第6周作业 扩展阅读 java面向对象的概念和定义 作业要求 每道题要有题目,代码,截图(只截运行结果). 题目1: 一个Phone ...

  4. java第六次作业(老师讲过后)

    import java.util.*; public class Draw { private ArrayList list; public Draw() { list= new ArrayList( ...

  5. Java第六次作业修改版

    import java.util.ArrayList; import java.util.Collections; import java.util.Random; public class Draw ...

  6. 201521123058 java第六次作业

    1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图,对面向对象思想进行一个总结. 2. 书面作业 1.clone方法 1.1 Object对 ...

  7. java第六周作业

    1  JSF请求处理生命周期的高度概述 从历史上看,Web应用程序必需的大部分开发,主要是处理Web客户端的HTTP请求.随着Web从传统的静态文档传送模型(在这种模型中,只请求静态Web页面,没有参 ...

  8. Java第六次作业:RuPengGame setGameSize setGameTitle alert loadBgView playSound pause closeSound confirm input createText setTextPosition setTextColor setTextFontSize hideText showText CreateImage(number)

    package com.swift; import java.awt.Color; import com.rupeng.game.GameCore;//导入游戏引擎包 //实现Runnable接口 p ...

  9. Week06《Java程序设计》第六次作业总结

    Week06<Java程序设计>第六次作业总结 1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图或相关笔记,对面向对象思想进行 ...

随机推荐

  1. Windows 7 IE主页被篡改,如何修复?

    有时我们的电脑会因为病毒的入侵,使得IE主页被篡改,然后就会被没底线的广告包围,有时用杀毒软件也不修复,那么此时应该怎么修复呢?其实很简单,只需几步,就可以让您的电脑重新清净下来. 第一步 点击“开始 ...

  2. gcc编译命令行依赖库的指定顺序

    gcc链接过程中定义了三个集合:可重定位目标文件集合E.未解析符号集合U和已定义符号集合D,链接基本流程如下: 1) 按命令行指定顺序依次处理每个目标文件和库文件: 2) 如果为目标文件,将其加入集合 ...

  3. [UVa 1619]Feel Good

    #include <bits/stdc++.h> using namespace std; const int maxn = 1000010; struct node { int num; ...

  4. .添加索引和类型,同时设定edgengram分词和charsplit分词

    1.添加索引和类型,同时设定edgengram分词和charsplit分词 curl -XPUT 'http://127.0.0.1:9200/userindex/' -d '{   "se ...

  5. app活动页面上的痛点

    app项目上需要做一个小的活动,先看下页面布局 需求是这5个板块逐个展示,展示一块的时候,页面整体向上滚动一定的距离. 刚开始考虑的时候,是准备依赖css3属性的transition实现的,包括顺序延 ...

  6. Android中,Context,什么是Context?

    注:本文翻译自Context, What Context?,原文链接在这里,作者是Dave Smith.ps:译者链接http://blog.csdn.net/race604/article/deta ...

  7. java测试框架整理

    Test: Junit4+Hamcrest 不多说了,就靠着两个 import static org.hamcrest.Matchers.equalTo; import static org.juni ...

  8. 【原创】Android selector选择器无效或无法正常显示的一点研究

    想将LinearLayout作为一个按钮,加上一个动态背景,按下的时候,背景变色,这个理所当然应该使用selector背景选择器来做: <LinearLayout android:id=&quo ...

  9. windows + python + dlib

    我试了网上的各种教程,结果都是屁话 pip install dlib

  10. equals == 比较

    public class Equals{ public static void main(String[] args){ Interger n1=new Interger(47); Interger ...