李振海的gravatar头像
李振海2018-01-02 19:29:34
java实现用户等级制度算法

公司最近需要按充值消费划分等级制度。一块钱一个积分,我用一个数组表示出来 ,数据库里我用的是用户总共消费了多少元,根据这个消费的换算成等级,

final static Integer [] levelArr={1,3,10,20,50,100,200,500,1000,2000,5000,10000,20000,50000,100000,200000,500000};
	public static void main(String[] args) {

我的工具类

/*
 * 计算用户等级工具
 * 
 */
public class LevelUtil {
	static Logger logger = Logger.getLogger(LevelUtil.class);
	final static Integer [] levelArr={1,3,10,20,50,100,200,500,1000,2000,5000,10000,20000,50000,100000,200000,500000};
	public static void main(String[] args) {
	
		Double d=20.0;
		  UserLevel level = LevelUtil.getLevel(d);
			System.out.println(level.getLevel());;
			System.out.println(level.getCurrentGlamour());;
			System.out.println(level.getNeedGlamour());;
		
	}
	public static UserLevel getLevel(Double level){
		UserLevel userLevel = new UserLevel();
		int Currentlevel=0;  
		for (Integer integer : levelArr) {
			if(level>=integer){
				Currentlevel++;
			}
		}
		userLevel.setLevel(Currentlevel);
		userLevel.setCurrentGlamour(level.intValue());
		userLevel.setNeedGlamour(levelArr[Currentlevel]);
		return userLevel;
	}

}

封装的等级

/*
	 * 当前等级
	 */
	private int level;
	/*
	 * 当前魅力值
	 */
	private int currentGlamour;
	/*
	 * 升级所需魅力值
	 */
	private int needGlamour;
	

我数据库金额是Double类型的,所以这里就用的Double型的,不知道最代码的等级制度是怎么弄得,大家如果有好的方法给我说分享一下,


打赏

已有2人打赏

最代码-仓鼠的gravatar头像最代码官方的gravatar头像

分享到:

最近浏览
上世纪风景 LV87月16日
月亮月亮
二十八画 LV56月26日
月亮星星
bobble LV126月7日
月亮月亮月亮
xp9522 LV55月3日
月亮星星
七个梦5月2日
暂无贡献等级
wkc LV154月9日
月亮月亮月亮星星星星星星
Brucehan LV24月7日
星星星星
SISHEN LV23月21日
星星星星
4451841483月14日
暂无贡献等级
Evil_dong LV43月7日
月亮
顶部客服微信二维码底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友