比例选举

选举对象

 1 package com.yeepay.sxf.xuanju;
 2 /**
 3  * 被选举对象
 4  * @author sxf
 5  *
 6  *
 7  */
 8 public class Channle {
 9     //名字
10     private String name;
11     //比例
12     private Integer proportion;
13
14     public Channle() {
15         super();
16     }
17     public Channle(String name, Integer proportion) {
18         super();
19         this.name = name;
20         this.proportion = proportion;
21     }
22     public String getName() {
23         return name;
24     }
25     public void setName(String name) {
26         this.name = name;
27     }
28     public Integer getProportion() {
29         return proportion;
30     }
31     public void setProportion(Integer proportion) {
32         this.proportion = proportion;
33     }
34
35
36
37 }

选举流程

 1 package com.yeepay.sxf.xuanju;
 2
 3 import java.util.HashSet;
 4 import java.util.Random;
 5 import java.util.Set;
 6 /**
 7  * 比例选举(存在缺陷,常常选举不到)
 8  * @author sxf
 9  *
10  */
11 public class Proportion {
12     /**
13      * 比例选举
14      * A的比例50%
15      * B的比例30%
16      * C的比例20%
17      * @param args
18      */
19     public static void main(String[] args) {
20         //获取选举对象
21         Set<Channle> set=getChannle();
22
23         //算出当前随机数
24         Random random=new Random(System.currentTimeMillis());
25         int a=random.nextInt();
26         int b=Math.abs(a);
27         int c=b%100;
28         System.out.println("Proportion.main()"+c);
29         //进行选举
30         for (Channle channle : set) {
31             int d=channle.getProportion();
32             //随机数小于等于比例
33             if(c<=d){
34                 System.out.println("Proportion.main()"+channle.getName()+"被选中");
35                 break;
36             }
37         }
38
39
40
41     }
42     /**
43      * 获取选举对象集合
44      * @return
45      */
46     public static Set<Channle> getChannle(){
47         Channle aChannle=new Channle("A", 50);
48         Channle bChannle=new Channle("B", 30);
49         Channle cChannle=new Channle("C",20);
50         Set<Channle> set=new HashSet<Channle>();
51         set.add(aChannle);
52         set.add(bChannle);
53         set.add(cChannle);
54         return set;
55     }
56 }

时间: 2024-10-12 00:17:39

比例选举的相关文章

十八大报告(全文)

坚定不移沿着中国特色社会主义道路前进 为全面建成小康社会而奋斗 --在中国GCD第十八次全国代表大会上的报告 (2012年11月8日) HJT 11月8日,中国GCD第十八次全国代表大会在北京人民大会堂开幕.HJT代表十七届中央委员会向大会作报告. 新华社记者 黄敬文 摄 同志们: 现在,我代表第十七届中央委员会向大会作报告. 中国GCD第十八次全国代表大会,是在我国进入全面建成小康社会决定性阶段召开的一次十分重要的大会.大会的主题是:高举中国特色社会主义伟大旗帜,以邓小平理论."三个代表&qu

2016年总统选举的预测

ASA的美国总统竞选 在这个大选之年,美国统计协会(ASA)将学生竞赛和总统选举放在一起,将学生预测谁是2016年总统大选的赢家准确的百分比作为比赛点.详情见: http://thisisstatistics.org/electionprediction2016/ 获取数据 互联网上有很多公开的民调数据.可以下面的网站获取总统大选的相关数据: http://projects.fivethirtyeight.com/2016-election-forecast/national-polls/ 其他

13.按比例显示图片、自定义属性、测量

有时候服务器返回的图片有可能宽高是不一样的,所以需要按照一定宽高比例去显示,修改专题界面 自定义属性 <resources> <declare-styleable name="com.itheima.googleplay.view.RatioLayout"> <attr name="ratio" format="float"></attr> </declare-styleable> &l

jQuery实现等比例缩放大图片

在页面布局时,有时会遇到大图片将页面容器撑大,超出规定区域, 这时我们就需要将图片按比例缩放,让大图片自适应页面布局. 查看演示http://itmyhome.com/jquery_image_scaling/ 1.页面中有如下图片 <img alt="leaf" src="img/leaf.jpg"> 2.使用jQuery将图片缩放 <script type="text/javascript"> window.onloa

css 布局之定位 相对/绝对/成比例缩放

给body添加 overflow: hidden; 可以将页面所有的 滚动条隐藏,但必须要给body 设置一个高度 overflow: hidden; height:864px; 父元素必须要设置 position:relative 必须设置 width 与 height 且不能用百分比 父层如果是图片,要使用  background: url(bg.jpg) no-repeat; 子元素必须设置 position: absolute; 必须设置 width 与 height 定位使用 top

一主两从的环境,如果主库挂了,如何选举一个从库作为主库?

如图: 如果M挂了,怎么从S1和S2中选举一个从库作为主库? 传统复制的解决方法 (1)查看从库状态: S1:show slave status: S2:show slave status: [email protected] [(none)]>show slave status\G*************************** 1. row ***************************               Slave_IO_State: Reconnecting af

理解CSS3中的background-size(对响应性图片等比例缩放)

2016-03-10 01:40 by 空智, 7463 阅读, 8 评论, 收藏, 编辑 阅读目录 background-size的基本属性 给图片设置固定的宽度和高度的 固定宽度400px和高度200px-使用background-size:400px 200px缩放设置 固定宽度400px和高度200px-使用background-size:400px;的缩放设置,那么第二个参数会自动转换为auto 固定宽度400px和高度200px-使用background-size:100% 100%

图解zookeeper FastLeader选举算法【转】

转自:http://codemacro.com/2014/10/19/zk-fastleaderelection/ zookeeper配置为集群模式时,在启动或异常情况时会选举出一个实例作为Leader.其默认选举算法为FastLeaderElection. 不知道zookeeper的可以考虑这样一个问题:某个服务可以配置为多个实例共同构成一个集群对外提供服务.其每一个实例本地都存有冗余数据,每一个实例都可以直接对外提供读写服务.在这个集群中为了保证数据的一致性,需要有一个Leader来协调一些

JS-自制提速小工具:开发页面时需要按比例计算宽高值的快速计算器

<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <meta name="author" content"郭菊锋,[email protected]"> <title>开发页面时需要按比例计算宽高值得快速计算器</title> </head> <body> <p id="