java分片_分片算法(java)

以前写的一个分片算法,对股票进行分片处理,保证每台机器处理的股票数是平均的,下面的核心算法是返回当前机器处理的数量:

import java.util.HashMap;

import java.util.Map;

/**

* @author LIANGXI

* @Description:分片算法

*

*/

public class Utils {

public static void main(String[] args) {

Integer splitStockCode = splitStockCode(5000, 5, 1);

System.out.println(splitStockCode);

}

/**

* 对股票代码进行分片

* @param countNum 总数

* @param splitNum 片数

* @param spoutNum 几号机

* @return

*/

public static Integer splitStockCode(int countNum,int splitNum,int spoutNum) {

Map map = new HashMap();

if(countNum < splitNum && countNum % splitNum == countNum){

if(spoutNum == 1){

return countNum;

}else{

return 0;

}

}else if(countNum == splitNum && countNum % splitNum == 0){

return countNum/splitNum;

}else if(countNum > splitNum){

if(spoutNum == 1){

int a = countNum - (countNum % splitNum);

return (a / splitNum)+(countNum % splitNum);

}else{

int a = countNum - (countNum % splitNum);

return a / splitNum;

}

}

return 0;

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值