package com.jou.money;
public class User {
private String username;
private double leftMoney;
public User(String username, double leftMoney) {
this.username = username;
this.leftMoney = leftMoney;
}
public User(){
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public double getLeftMoney() {
return leftMoney;
}
public void setLeftMoney(double leftMoney) {
this.leftMoney = leftMoney;
}
public void show(){
System.out.println("用户名:"+username+"钱为"+leftMoney);
}
}
package com.jou.money;
import java.util.ArrayList;
import java.util.Random;
public class QunZhu extends User{
public QunZhu(){
}
public QunZhu(String user_name,double qian){
super(user_name,qian);
}
public ArrayList<Double> send(double money,int count ){
double leftmoney=getLeftMoney();
if(money>leftmoney){
System.out.println("余额不足");
return null;
}
setLeftMoney((leftmoney-money));
ArrayList<Double> list_evermoney=new ArrayList<>();
// double a=(double)Math.round(money*100/count)/100;
double[] a=new double[count];
Random r=new Random();
double left_money=money;
int remmber_i=0;
for (int i = 0; i < count; i++) {
left_money-=a[remmber_i];
if(i==count-1){
a[i]=Math.round(left_money*100)/100;
break;
}
a[i]=Math.round(r.nextDouble()*left_money*100);
a[i]/=100;
remmber_i=i;
}
for (int i = 0; i <count ; i++) {
list_evermoney.add(a[i]);
}
return list_evermoney;
}
}
package com.jou.money;
import javax.xml.crypto.dom.DOMCryptoContext;
import java.util.ArrayList;
import java.util.Random;
public class Member extends User {
public Member(){}
public Member(String username, double leftMoney){
super(username,leftMoney);
}
public void get_money(ArrayList<Double> list){
Random r =new Random();
int a=r.nextInt(list.size());
Double money=list.remove(a);
setLeftMoney(money);
}
}
package com.jou.money;
import java.util.ArrayList;
public class test {
public static void main(String[] args) {
QunZhu q=new QunZhu("hostA",100);
ArrayList<Double> sz=q.send(80,3);
Member m1=new Member("aaa",0);
Member m2=new Member("bbb",0);
Member m3=new Member("ccc",0);
m1.get_money(sz);
m2.get_money(sz);
m3.get_money(sz);
System.out.println(m1.getLeftMoney()+m2.getLeftMoney()+m3.getLeftMoney());
m1.show();
m2.show();
m3.show();
q.show();
}
}