java练习--群主发红包
无论群主和群成员都有属性name,money,放在父类User里
package com.qml.study;public class User {private String name ;private int money;public User() {}public User(String name, int money) {this.name = name;this.money = money;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getMoney() {return money;}public void setMoney(int money) {this.money = money;}public void show(){System.out.println("我是"+name+"我有"+money+"元钱");}}
群主类,有发红包的方法
package com.qml.study;import java.util.ArrayList;public class Manager extends User{public Manager(){} //默认构造public Manager(String name,int money){super(name,money); //调用父类的构造方法}public ArrayList<Integer> send(int totalMoney,int count){//集合用来存放若干个红包的金额ArrayList<Integer> list = new ArrayList<Integer>();int leftmoney = super.getMoney();if (leftmoney < totalMoney){System.out.println("余额不足");return list;//返回空}//扣钱,重新设置金额super.setMoney(leftmoney-totalMoney);int i1 = totalMoney / count; //平均分的金额int i2 = totalMoney % count; //剩余不能整除的金额放在最后一个红包里//比如10元分4个红包,前三个每个2元,第四个4元for (int i = 0; i < count-1; i++) {list.add(i1);}int last = i2+i1;list.add(last);return list;}}
群成员类,有收红包的方法
package com.qml.study;import java.util.ArrayList;
import java.util.Random;public class Member extends User{public Member(String name, int money) {super(name, money);}public Member(){}public void receive(ArrayList<Integer> list){//从钱包中随机取1个int index = new Random().nextInt(list.size());//根据索引,从集合中删除金额,给自己加入int delta = list.remove(index);int money = super.getMoney(); //自己原来的钱//重新设置金额super.setMoney(money+delta);}
}
启动类
package com.qml.study;import java.util.ArrayList;public class RunMoney {public static void main(String[] args) {Manager manager = new Manager("群主",100);Member member1 = new Member("成员1",0);Member member2 = new Member("成员2",0);manager.show();member1.show();member2.show();//群主发20元,发3个ArrayList<Integer> list = manager.send(20,3);member1.receive(list);member2.receive(list);manager.show();member1.show();member2.show();}
}
随机打印一次:
我是群主我有100元钱
我是成员1我有0元钱
我是成员2我有0元钱
我是群主我有80元钱
我是成员1我有6元钱
我是成员2我有8元钱
java练习--群主发红包相关推荐
- Java继承的综合案例——群主发红包
群主发普通红包.某群有多名成员,群主给成员发普通红包.普通红包的规则: 群主的一笔金额,从群主余额中扣除,平均分成n等份.,让成员领取. 成员领取红包后,保存到成员余额中. 请根据描述,完成案例中所有 ...
- 群主发红包——java学习
package com.cn.test; //父类 用户 public class User {private String name;private int money;public User() ...
- JAVA 群主发红包请红包案例 简易版
综合案例:群主发红包 群主发普通红包.某群有多名成员,群主给成员发普通红包. 普通红包的规则: 1. 群主的一笔金额,从群主余额中扣除,平均分成n等份,让成员领取 ...
- 继承练习:发红包案例实现(群主发红包、群成员接收红包)
//User package ExtendTest; /*群主发红包的功能实现(用到Extend): 父类:User(用户) 属性:name(姓名),money(总金额) 方法:无参构造和含参数(na ...
- Java练习继承群主发红包案例(分析与实现)
题目: 群主发普通红包,某群有多名成员,群主给成员发普通红包,普通红包的规则: 群主的一笔金额,从群主余额中扣除,平均分成n等份,让成员领取: 成员领取红包后,保存到成员余额中. 请根据描述,完成案例 ...
- Java实现微信、QQ等群主发红包实例(普通红包)
许久没有写blog 手有点生,但是准备开启常更模式了! 最近重拾Java知识,挑一些有趣的案例分享给大家.(拼手气红包案例) 分析: 首先,群主和成员都是微信.QQ等应用程序的用户,他们都可以归为用户 ...
- 【继承】【群主发红包案例】
一.题目要求: 群主发普通红包.某群有多名成员,群主给成员发普通红包.普通红包的规则: ①.群主的- -笔金额, 从群主余额中扣除,平均分成n等份,让成员领取. ②.成员领取红包后,保存到成员余额中. ...
- 群主发红包-java实现
package work01;public class RedPackage {int redPaclageNum;//红包数目double allMoney;//红包总金额double leftMo ...
- 群主发普通红包和手气红包
群主发普通红包 群主发普通红包.群主有多名成员,群主给成员发普通红包.普通红包的规则: 群主的一笔金额,从群主余额中扣除,平均分成n等份,让成员领取. 成员领取红包后,保存到成员余额中. 请根据描述, ...
最新文章
- macbook所有型号大全_提高MacBook电池寿命的15个技巧
- Idea左侧显示目录结构和.java文件的解决办法
- Matplotlib 中文用户指南 4.7 使用 LaTeX 渲染文本
- 95-910-144-源码-FlinkSQL-Flink的UDF
- jquery和css的区别是什么?
- python怎么通过占位符_如何输入占位符?
- 视频号直播带货成交的三大关键
- 对程序员来说最难的是写代码吗?
- 【剑指 offer】—— 快速排序
- 内容可编辑且随内容自增长的div
- 远程访问用户 Kindle---通过电子书实现控制
- 域名购买之后怎么使用
- JS正则:按中英文逗号 中英文分号 回车 空格分隔/切割字符串
- 阿拉伯数字翻译成中文的大写数字
- 《ClickHouse原理解析与应用实践》读书笔记(2)
- C - char与wchar_t(TCHAR/WCHAR)之间的相互转换
- 华为手机左侧快捷方式_华为手机的这六个快捷键,让使用更简便!
- 没钱去巴西? 谷歌地图街景带你游览比赛场馆
- 企业级智能BI平台开源框架
- CSS特效 操作方法