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 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图或相关笔记,对面向对象思想进行 ...
随机推荐
- 编写一个简单的jdbc例子程序
package it.cast.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Res ...
- 【SIGGRAPH】【最终幻想XV】的战斗场景实时演示的要点解说
[SIGGRAPH][最终幻想XV]的战斗场景实时演示的要点解说 原文:西川善司 http://www.4gamer.net/games/999/G999902/20160730004/ ...
- 更换Mac记录
1. 重装Mac (1)格式化硬盘 (2)重装系统 (3)修改各种配置:电脑名.键盘等 2. 安装必要软件 (1)QQ.微信.网易云音乐等 (2)火狐.谷歌.SourceTree等 (3)安装Git ...
- INotifyPropertyChanged, Interface
Data Object(class) impliment INotifyPropertyChanged; then the Object can update BindingSource. Impli ...
- c语言编程
1.常量和变量:变量是一块内存空间,该内存空间有类型约束,该内存中存放的数据可变. 变量三要素:类型,名称,值.常量:常量的数据永远不变,a:自变量,b:符合常量,c:预定义常量. 2.运算符和返回类 ...
- 关于IOS的唯一标识总结
APPLE官方宣布在2013年5月后,使用 UUID的APP将不能通过审核,同时APPLE增加了广告标识符(IDFA)和IDFV. 1.有什么方法获取UUID? //CFUUID CFUUIDRef ...
- WCF (413) Request Entity Too Large
有网友碰到过这样的问题:wcf 远程服务器返回了意外响应: (413) Request Entity Too Large. - wsx_net,问题详细内容为:挺不错的博文:wcf 远程服务器返回了意 ...
- Title Case a Sentence
解决思路 将字符串转换成小写 把字符串分割成字符串数组 循环数组将每一个单词首字母大写 把数组所有的元素转换成一个字符串 第一种方法 function titleCase(str) { str=str ...
- java中字节流与字符流的区别
字节流 在I/O类库中,java.io.InputStream和java.io.OutputStream分别表示字节输入流和字节输出流,它们都是抽象类,不能实例化,数据流中的最小单位是字节,所以叫做字 ...
- ubuntu14.0 (arm平台)源码安装 VLC播放器
环境 ubuntu14.0 arm开发板 源 deb http://mirrors.ustc.edu.cn/ubuntu-ports/ trusty main multiverse restrict ...