怎样从php转向java_PHP代码怎么转Java代码?-问答-阿里云开发者社区-阿里云

代码如下:

public class Guess {

private int id;

private String prize;

private int v;

public Guess(int id, String prize, int v) {

super();

this.id = id;

this.prize = prize;

this.v = v;

}

public i1nt getId() {

return id;

}

public void setId(int id) {

this.id = id;

}

public String getPrize() {

return prize;

}

public void setPrize(String prize) {

this.prize = prize;

}

public int getV() {

return v;

}

public void setV(int v) {

this.v = v;

}

}

public class WinPrize {

private int mes;

private String prize;

public int getMes() {

return mes;

}

public WinPrize(int mes, String prize) {

super();

this.mes = mes;

this.prize = prize;

}

public WinPrize() {

super();

// TODO Auto-generated constructor stub

}

@Override

public String toString() {

return "mes:" + mes + ", prize:" + prize;

}

public void setMes(int mes) {

this.mes = mes;

}

public String getPrize() {

return prize;

}

public void setPrize(String prize) {

this.prize = prize;

}

}

public class TestPHP {

public void guess_prize(){

Map prize_attr=new HashMap();

Integer[] arr=null;

prize_attr.put(0, new Guess(1,"平板电脑",3));

prize_attr.put(1, new Guess(2,"数码相机",5));

prize_attr.put(2, new Guess(3,"音箱设备",10));

prize_attr.put(3, new Guess(4,"4G优盘",12));

prize_attr.put(4, new Guess(5,"Q币10元",20));

prize_attr.put(5, new Guess(6,"下次没准就能中哦",50));

arr=new Integer[prize_attr.size()+1];

for(Guess g:prize_attr.values()){

//System.out.println(prize_attr.size());

arr[g.getId()]=g.getV();

}

WinPrize res=new WinPrize();

int rid=getRand(arr);

if(prize_attr.get(rid)==null){

res.setMes(0);

res.setPrize("下次没准就能中哦");

}else{

res.setMes(rid==6?0:1);

res.setPrize(prize_attr.get(rid).getPrize());

}

System.out.println(res);

}

public int getRand(Integer[] arr){

int sum=0;

int result=0;

//System.out.println(arr);

for(int i=1;i

sum+=arr[i];

}

for(int i=1;i

Random r=new Random();

int random=r.nextInt(sum)+1;//arr长度为6,生成1-6的随机数

if(random<=arr[i]){

result=i;

break;

}else{

sum-=arr[i];

}

}

return result;

}

public static void main(String[] args) {

new TestPHP().guess_prize();

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值