java第六次作业
一个抽奖程序:用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第六次作业的更多相关文章
- 1903021116—吉琛—Java第六周作业—类的定义
项目 内容 课程班级博客链接 19信计班 这个作业要求链接 第六周作业链接 java面向对象的概念和定义 博客名称 学号-姓名-Java第六周作业-题目自拟 要求 每道题要有题目,代码(使用插入代码, ...
- Java第六次作业--异常处理和Java类集
Deadline: 2017-5-4 23:00 一.学习要点 认真看书并查阅相关资料,掌握以下内容: 理解Java的异常处理机制 掌握捕获异常和声明抛出异常的方法 掌握List接口的实现类Array ...
- 1903021121—刘明伟—Java第六周作业—java类
项目 内容 课程班级博客链接 19信计班(本) 作业要求链接 第6周作业 扩展阅读 java面向对象的概念和定义 作业要求 每道题要有题目,代码,截图(只截运行结果). 题目1: 一个Phone ...
- java第六次作业(老师讲过后)
import java.util.*; public class Draw { private ArrayList list; public Draw() { list= new ArrayList( ...
- Java第六次作业修改版
import java.util.ArrayList; import java.util.Collections; import java.util.Random; public class Draw ...
- 201521123058 java第六次作业
1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图,对面向对象思想进行一个总结. 2. 书面作业 1.clone方法 1.1 Object对 ...
- java第六周作业
1 JSF请求处理生命周期的高度概述 从历史上看,Web应用程序必需的大部分开发,主要是处理Web客户端的HTTP请求.随着Web从传统的静态文档传送模型(在这种模型中,只请求静态Web页面,没有参 ...
- 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 ...
- Week06《Java程序设计》第六次作业总结
Week06<Java程序设计>第六次作业总结 1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图或相关笔记,对面向对象思想进行 ...
随机推荐
- UILabel笔记(待完善)
UIlabel的换行由 numberOfLines 属性控制,当为0时,则会自动换到适合的行数: 换行的模式由 lineBreakMode 属性控制: public enum NSLineBreakM ...
- matlab处理图像代码
1.图像的读取MATLAB中从图像文件中读取数据用函数imread(),这个函数的作用就是将图像文件的数据读入矩阵中,此外还可以用imfinfo()函数查看图像文件的信息(见例1)%例1:图像数据及图 ...
- JavaScript:数组大全
栈/队列 数组es3: pop删除最后一项(栈) shift删除第一项(队列) push增加到最后(栈) unshift增加到最前(队列) reverse翻转 join转字符串 slice截取(切片) ...
- WIN7 如何将BAT文件附加到任务栏
1.桌面有个 a.bat 文件2.将a.bat 改名为 a.exe3.将 a.exe 拉到任务栏4.修改桌面的 a.exe 回 a.bat5.打开C:\Users\Administrator\AppD ...
- Return Largest Numbers in Arrays
题目要求 右边大数组中包含了4个小数组,分别找到每个小数组中的最大值,然后把它们串联起来,形成一个新数组. 提示:你可以用for循环来迭代数组,并通过arr[i]的方式来访问数组的每个元素. 答题思路 ...
- Kafka 解析
Kafak采用硬盘顺序写入和内存映射文件技术提示性能.即便是顺序写入硬盘,硬盘的访问速度还是不可能追上内存.所以Kafka的数据并不是实时的写入硬盘,它充分利用了现代操作系统分页存储来利用内存提高I/ ...
- 在asp.net WebForms中使用路由Route
1.新建WebForms应用程序 2.打开Global.asax文件代码如下: public class Global : System.Web.HttpApplication { protected ...
- 自动更新补丁Security Update for Internet Explorer 10 for Windows Server 2008 R2 x64 Edition (KB2964358)失败
下载http://www.microsoft.com/zh-CN/download/details.aspx?id=42581手动安装成功.
- CentOS下 pycharm开发环境搭建
经过一系统列的折腾之后,我终于有高版本的python和我熟悉的输入法用了,下面来搭建pycharm下的python开发环境. 1.首先安装java jdk注意是JAVA 的JDK,不是JAVA VM什 ...
- JQuery插件开发简单实例
经常使用Jquery的各种插件,却对如何开发插件一无所知,以为是一件很麻烦的事儿?其实不然,下面通过一个简单的实例,来看一下Jquery Plugin的开发. 先看DEMO:动画菜单 不用插件如何实现 ...