找了两组程序:
代码一:
import javaawt;
import javaawtevent;
import javaxswing;
class GoodLucky extends JFrame implements ActionListener
{
JTextField tf = new JTextField();
JButton b1 = new JButton("开始");
JButton b2 = new JButton("停止");
boolean sg=false;
public GoodLucky(){
b1setActionCommand("start");
JPanel p = new JPanel();
padd(b1);
padd(b2);
b1addActionListener(this);
b2addActionListener(this);
b2setEnabled(false);
thisgetContentPane()add(tf,"North");
thisgetContentPane()add(p,"South");
thissetDefaultCloseOperation(JFrameEXIT_ON_CLOSE);
thissetSize(300,200);
thissetLocation(300,300);
Cursor cu = new Cursor(CursorHAND_CURSOR);
thissetCursor(cu);
thissetVisible(true);
tfsetText("祝大家鸿运!");
thisgo();
}
public void go()
{
while(true)
{
if(sg==true)
{
String s = " ";
for(int j = 1; j <= 7;j++)
{
int i = (int)(Mathrandom() 9) + 1;
if(i < 10)
{
s = s + " 0" + i;
}
else
{
s = s + " " + i;
}
}
tfsetText(s);
}
try
{
Threadsleep(100);
}
catch(javalangInterruptedException e)
{
eprintStackTrace();
}
}
}
public void actionPerformed(ActionEvent e)
{
String s = egetActionCommand();
if(sequals("start"))
{
sg = true;
b1setEnabled(false);
b2setEnabled(true);
}
else
{
sg= false;
b2setEnabled(false);
b1setEnabled(true);
}
}
public static void main(String[] args)
{
new GoodLucky();
}
}
代码二:
package comsofteemlesson03;
import javaawtBorderLayout;
import javaawtContainer;
import javaawtFont;
import javaawteventMouseAdapter;
import javaawteventMouseEvent;
import javaxswingJButton;
import javaxswingJFrame;
import javaxswingJLabel;
import javaxswingJPanel;
import javaxswingJTextField;
public class LuckyNumberInterface extends JFrame {
JLabel ltitle = new JLabel("欢迎使用本抽奖机", JLabelCENTER);
JLabel linput = new JLabel("幸运号码:");
JTextField input = new JTextField(20);
JButton btnStart = new JButton("开始");
JButton btnStop = new JButton("停止");
JPanel lpanel = new JPanel();
JPanel btnPanel = new JPanel();
public LuckyNumberInterface() {
super("抽奖机");
final LuckyNumber ln = new LuckyNumber(input);
lnstart();
Container container = getContentPane();
lpaneladd(linput);
lpaneladd(input);
btnPaneladd(btnStart);
btnPaneladd(btnStop);
Font font = new Font("宋体", FontBOLD, 16);
ltitlesetFont(font);
containeradd(ltitle, BorderLayoutNORTH);
containeradd(lpanel, BorderLayoutCENTER);
containeradd(btnPanel, BorderLayoutSOUTH);
btnStartaddMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
lnsetFlag(true);
}
});
btnStopaddMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
lnsetFlag(false);
}
});
setDefaultCloseOperation(EXIT_ON_CLOSE);
setSize(400, 120);//设置窗口的显示大小
setLocation(400, 300);//设置窗口显示的位置
setVisible(true);//显示窗口
}
public static void main(String[] args) {
new LuckyNumberInterface();
}
}
package comsofteemlesson03;
import javatextDecimalFormat;
import javautilRandom;
import javaxswingJTextField;
public class LuckyNumber extends Thread {
private String luckyNumber = "";
private boolean flag = false;//开关
private JTextField input;
public LuckyNumber(JTextField input) {
thisinput = input;
}
public void setFlag(boolean flag) {
thisflag = flag;
}
@Override
public void run() {
while (true) {
if (flag) {
generatorLuckyNumber();
}
}
}
public void generatorLuckyNumber() {
String[] firstNumber = { "130", "131", "134", "137", "135", "139",
"150", "151", "155", "158", "159" };
Random rd = new Random();
int number = rdnextInt(10000);
DecimalFormat df = new DecimalFormat("0000");
String lastNumber = dfformat(number);
luckyNumber = firstNumber[rdnextInt(firstNumberlength)] + ""
+ lastNumber;
inputsetText("");
inputsetText(luckyNumber);
}
}
帮你做了一个,不知是否满意呢?
import javaappletApplet;
import javaawtButton;
import javaawtColor;
import javaawtGraphics;
import javaawtTextField;
import javaawteventActionEvent;
import javautilRandom;
import javautilVector;
public class Lottery extends Applet {
private static final long serialVersionUID = 1L;
int w,h;
Button ok,out,setup;
String[] msg;
TextField[] gaiLv;
TextField[] jiangPin;
int mx,ml;
int maxNum;
Random ran;
Vector<Integer> fist;
Vector<Integer> sec;
Vector<Integer> third;
Vector<Integer> lucky;
boolean lot=false;
boolean iserr=false;
boolean issetup=false;
String mesg="输入错误";
String priseMsg="继续努力!";
public void init(){
w=400;
h=220;
mx=20;
ml=40;
ran=new Random();
thissetSize(w, h);
thissetLayout(null);
ok=new Button("抽奖");
out=new Button("退出");
setup=new Button("确认设置");
msg=new String[4];
msg[0]="一等奖";
msg[1]="二等奖";
msg[2]="三等奖";
msg[3]="幸运奖";
gaiLv=new TextField[4];
jiangPin=new TextField[4];
for(int i=0;i<4;i++){
gaiLv[i]=new TextField("00"+(i+1));
thisadd(gaiLv[i]);
gaiLv[i]setBounds(mx+ml, 75+i26, 60, 18);
jiangPin[i]=new TextField();
thisadd(jiangPin[i]);
jiangPin[i]setBounds(mx+ml3, 75+i26, 80, 18);
}
thisadd(ok);
oksetBounds(260, 180, 60, 28);
okaddActionListener(new LotButtonAction(this));
thisadd(out);
outsetBounds(330, 180, 60, 28);
outaddActionListener(new LotButtonAction(this));
thisadd(setup);
setupsetBounds(110, 180, 80, 24);
setupaddActionListener(new LotButtonAction(this));
}
public void paint(Graphics g){
gsetColor(Colorwhite);
gfillRect(0, 0, thisgetWidth(), thisgetHeight());
gsetColor(new Color(230,255,230));
gfillRect(0, 0, w, 30);
gsetColor(ColorBLUE);
gdrawString("JAVA抽奖系统", 130, 20);
gsetColor(ColorORANGE);
gdrawRect(10, 40, 230, 170);
gsetColor(ColorBLACK);
gdrawString("设置", mx, 60);
gdrawString("概率", mx+ml, 60);
gdrawString("奖品", mx+ml3, 60);
for(int i=0;i<msglength;i++){
gsetColor(new Color(255-(i30),45,89));
gdrawString(msg[i], 20, 90+i26);
}
if(lot==true){
gsetColor(new Color(rannextInt(255),rannextInt(255),rannextInt(255)));
if(priseMsglength()<=7){
gdrawString(priseMsg, 260, 100);
}else{
gdrawString(priseMsgsubstring(0, 5), 260, 100);
gdrawString(priseMsgsubstring(5), 260, 120);
}
}
if(iserr==true){
gdrawString(mesg, 260, 100);
}
}
public void getLucky(){
float firu=1;
float secu=1;
float thiu=1;
float fouu=1;
float minu=1;
if(gaiLv[0]getText()trim()length()>1){
firu=FloatparseFloat(gaiLv[0]getText());
if(firu<=0||firu>=1){
iserr=true;
return;
}
if(firu<minu){
minu=firu;
}
}
if(gaiLv[1]getText()trim()length()>1){
secu=FloatparseFloat(gaiLv[1]getText());
if(secu<=0||secu>=1){
iserr=true;
return;
}
if(secu<minu){
minu=secu;
}
}
if(gaiLv[2]getText()trim()length()>1){
thiu=FloatparseFloat(gaiLv[2]getText());
if(thiu<=0||thiu>=1){
iserr=true;
return;
}
if(thiu<minu){
minu=thiu;
}
}
if(gaiLv[3]getText()trim()length()>1){
fouu=FloatparseFloat(gaiLv[3]getText());
if(fouu<=0||fouu>=1){
iserr=true;
return;
}
if(fouu<minu){
minu=fouu;
}
}
if(minu>=1||minu<=0){
iserr=true;
return;
}
float aNum=1/minu;
maxNum=(int)aNum;
int count=(int)(firu/minu);
if(firu!=1){
fist=getLotteryVec(maxNum,count);
}else{
fistremoveAllElements();
}
count=(int)(secu/minu);
if(secu!=1){
sec=getLotteryVec(maxNum,count);
}else{
secremoveAllElements();
}
count=(int)(thiu/minu);
if(thiu!=1){
third=getLotteryVec(maxNum,count);
}else{
thirdremoveAllElements();
}
count=(int)(fouu/minu);
if(fouu!=1){
lucky=getLotteryVec(maxNum,count);
}else{
luckyremoveAllElements();
}
issetup=true;
iserr=false;
}
protected Vector<Integer> getLotteryVec(int maxNum,int num){
Vector<Integer> result=new Vector<Integer>();
for(int i=0;i<num;i++){
resultadd(rannextInt(maxNum));
}
return result;
}
protected int getaNum(){
return rannextInt(maxNum);
}
public int isLucky(int pNum){
for(int i=0;i<fistsize();i++){
if(fistget(i)==pNum){
return 1;
}
}
for(int i=0;i<secsize();i++){
if(secget(i)==pNum){
return 2;
}
}
for(int i=0;i<thirdsize();i++){
if(thirdget(i)==pNum){
return 3;
}
}
for(int i=0;i<luckysize();i++){
if(luckyget(i)==pNum){
return 4;
}
}
return -1;
}
public void ButtonActionPerformed(ActionEvent e){
String acName=egetActionCommand();
if(acNameequals("抽奖")){
if(issetup==false){
priseMsg="请先设置参数!";
lot=true;
repaint();
lot=false;
return;
}
lot=true;
priseMsg=getResult(getaNum());
repaint();
// lot=false;
}else if(acNameequals("退出")){
thissetVisible(false);
thisstop();
thisdestroy();
Systemexit(0);
}else if(acNameequals("确认设置")){
lot=false;
getLucky();
repaint();
}
}
public String getResult(int num){
int resu=isLucky(num);
String result="";
switch(resu){
case -1:
result="继续努力!";
break;
case 1:
result="恭喜你!一等奖!\n获得"+jiangPin[0]getText();
break;
case 2:
result="恭喜你!二等奖!\n获得"+jiangPin[1]getText();
break;
case 3:
result="恭喜你!三等奖!\n获得"+jiangPin[2]getText();
break;
case 4:
result="恭喜你!幸运奖!\n获得"+jiangPin[3]getText();
break;
default:
result="继续努力!";
}
return result+num;
}
}
class LotButtonAction implements javaawteventActionListener{
Lottery su;
public LotButtonAction(Lottery bun){
thissu=bun;
}
@Override
public void actionPerformed(ActionEvent e) {
suButtonActionPerformed(e);
}
}
开发一套电商系统需要多少钱?需要多长时间?
随着互联网技术的发展,第三方大型电商网站的竞争越来越大,所以很多企业想要开发一个属于自己的电商商城系统,普遍比较受关注的是电商商城系统开发价格。那么,创研股份凭借12年的电商网站开发经验,对电商商城网站建设价格进行简单归纳介绍。
大家都明白一个道理“便宜没好货”,推及到建设电商网站同样适用,开发一个电商网站会因为系统功能、开发语言、网站模式、行业和电商网站开发商等因素影响电商网站开发报价。每一个影响电商网站开发费用的介绍,如下:
一、网站功能需求决定建设价格
一个普通的电商网站会拥有商品管理、订单管理、促销管理、会员管理、物流管理、网站装修、数据统计和营销管理等功能。然而,不少商家会跟数商云顾问反馈说,普通电商网站可能已经不能满足发展已久的电商业务,需要拥有更多个性化、行业特性的电商网站功能。那么,定制电商网站功能,费用自然也就会增加,功能需求越多,功能实现难度越高,随之电商网站开发费用也就越高。
二、网站开发语言决定建设价格
常用的电商网站开发语言有PHP、JAVA、net、JSP等,但最新的最受欢迎的口碑最好的是JAVA和PHP。然而,做电商网站采用不同语言开发,JAVA架构和PHP架构的电商网站费用也会不同,JAVA架构的电商网站价格会更高。因为,JAVA电商网站采用的是web开发技术,使用的面向对象的系统设计方法也不同,而PHP电商网站开发则是采用面向过程的开发方法。
相对来说,JAVA电商网站的安全性、灵活性、可扩展性都比PHP的好,同时使用JAVA开发需要做大量的电商系统分析和设计工作,这样更利于企业未来的电商业务发展,一个好的电商网站应该能够适应企业业务发展而进行二次开发,扩展网站功能。所以,业内有这么个说法:做好电商网站的建设与其说是关注价格,倒不如说是关注自身刚需与现实条件的最理想契合,影响报价的因素很多,我们要选择适合自己的才是正确的,大家一定要选择正规的电商网站搭建系统,以及专业度高的电商网站服务商。
三、电商网站开发商决定建设价格
电商网站开发商是最直接的价格因素,可以说“做一个电商网站多少钱”不就是由电商网站开发商说了算吗这句话看似对,有不太对。因为,每一家电商网站开发商的技术水平、专业程度、服务质量等不同,开发的电商网站价格也自然不一样。有的电商网站开发商可能前期报价非常的低,针对不懂的企业商家可以在上面介绍到的内容中偷工减料,甚至还会因网站模式不对、行业业务分析不透彻等不专业因素影响电商网站项目开发失败。有的电商网站开发商不管在电商系统框架、电商网站功能、行业开发经验、服务质量等各方面都相对专业全面,自然电商网站报价也会比较贵。但其实往更深一层次想专业全面地开发一个电商网站,在使用上、开发时间上、未来二次开发等优势上考虑,其实会安全性高、费用更节省。这个具体看你要开发的功能吧。全管oa系统,支持二次开发,开发周期短,成本低,厂家直接服务,品质有保障。电商系统分为B2B、B2C、O2O等各种模式,独立部署还是SaaS,有哪些行业特性,功能需求不尽相同,很多因素影响电商系统的功能、报价和开发周期,不能一概而论。通常来说,FEC筷云信息独立部署、定制开发一套电商系统是要经过前期调研、需求规划、研发设计、测试与上线等几个步骤,一般是分2~3期去收费和开发,基础需求和紧急需求优先实现并快速上线,亮点功能和期望功能在后续进行优化和系统迭代,从而既保障开发进度,又节约开发成本。
一定要用线程,首先,我们先来分析一下如何才能做到让屏幕上的数字不停的变化,这就需要使用线程了,当我们开始抽奖的按钮的时候,线程启动,此时屏幕上的数字开始滚动。当我们点击结束按钮的时候,线程终止,此时就可以显示出抽奖结果了。
调试好了 直接用 public static void main(String[] args) { Random rand = new Random();//定义随机数产生器 List list_One = new ArrayList();//定义一等奖数字集合 List list = null; //用list时 /list = new ArrayList();//定义100个随机数 集合 for(int i = 0; i < 100;){//产生100个3位数 的随机不重复数字 if(check(randnextInt(899) + 100,list)){ i++; } }/ //用set时 Set set = new HashSet(); while(setsize() < 100){ setadd(randnextInt(899) + 100); } list = new ArrayList(set); for(int k = 0; k < 5;){//产生5个随机一等奖 if(check(randnextInt(100),list,list_One)) k++; } } for(int a = 0; a < list_Onesize();a++){ Systemoutprintln(list_Oneget(a)); } } / 验证该数字是否在集合中 @param i @param list @return / public static boolean check(int i,List list){ if(listsize() == 0){ listadd(i); }else{ for(int j = 0; j < listsize(); j++){ if(i == listget(j)){ return false; } } listadd(i); } return true; } / 抽取随机数作为中奖的下标(重载) @param i @param list @param list_One @return / public static boolean check(int i,List list,List list_One){ if(listsize() == 0){ list_Oneadd(listget(i)); }else{ for(int j = 0; j < listsize(); j++){ if(i == listget(j)){ return false; } } list_Oneadd(listget(i)); } return true; }
优先级规则使高等奖尽量在后期抽出
import javautilLinkedList;import javautilList;
public class GetGift {
// 奖品仓库
private List<Gift> gifts = new LinkedList<Gift>();
public GetGift() {
// 生成一堆奖品放进奖品仓库
// 一等奖一个优先级1,二等奖两个优先级2。。。20等奖20个优先级20
for (int i = 1; i <= 20; i++) {
GiftType gt = new GiftType(i + "等奖", i, i);
for (int j = 1; j <= i; j++) {
giftsadd(new Gift(i + "等奖——第" + j + "号", gt));
}
}
}
// 抽奖
public synchronized Gift getGift() {
int randomNumber = (int) (Mathrandom() total());
int priority = 0;
for (Gift g : gifts) {
priority += ggetType()getPriority();
if (priority >= randomNumber) {
// 从奖品库移出奖品
giftsremove(g);
return g;
}
}
// 抽奖次数多于奖品时,没有奖品
return null;
}
/
@param args
/
public static void main(String[] args) {
GetGift gg = new GetGift();
// 一共生成210个奖品,抽210次,多抽显示null
for (int i = 0; i < 210; i++) {
Systemoutprintln(gggetGift());
}
}
// 计算总优先级,内部使用
private int total() {
int result = 0;
for (Gift g : gifts) {
result += ggetType()getPriority();
}
return result;
}
}
// 记录奖品的信息
// 如1等奖共1个,优先级为1最难抽
class GiftType {
// 名字(如1等奖)
private String name;
// 这种奖品的数量,数量越大越容易抽到
private int quantity;
// 这种奖品的优先级,最小为1,数越大越容易抽到
private int priority;
public GiftType(String name, int quantity, int priority) {
thisname = name;
thisquantity = quantity;
thispriority = priority;
}
public int getPriority() {
return priority;
}
@Override
public String toString() {
return "GiftType [name=" + name + ", quantity=" + quantity + ", priority=" + priority + "]";
}
}
// 奖品
class Gift {
// 每个奖品有唯一id,抽奖不会重复,格式为"16等奖——第8号"
private String id;
// 这个奖品的类别
private GiftType type;
public Gift(String id, GiftType type) {
thisid = id;
thistype = type;
}
public GiftType getType() {
return type;
}
@Override
public String toString() {
return "Gift [id=" + id + ", type=" + type + "]";
}
}
题主,您好,制作这个小程序的方法非常多,主要是看您要做成什么样子的,在哪里使用,不管是网页还是小程序,直接用JS也可以实现,如果想要做的严谨点,可以利用PHP或者JAVA做后台,将抽奖记录数据存储到数据库中去。
以上就是关于能帮忙用java做一个抽奖程序吗,就是简单的一,二,三等奖,特等奖。谢谢全部的内容,包括:能帮忙用java做一个抽奖程序吗,就是简单的一,二,三等奖,特等奖。谢谢、java 制作抽奖小程序、谁能帮我写一个java抽奖小程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)