当前位置: 首页 > news >正文

建设棋牌网站流程品牌设计和vi设计有什么区别

建设棋牌网站流程,品牌设计和vi设计有什么区别,淘宝电脑版官网,网站建设显示危险功能#xff1a; 1.签到 2.判断某天是否签到 3.统计某月的签到情况 4.统计某月连续签到了多少天 5.统计某月一共签到了多少次 代码 1.依赖 dependenciesdependencygroupIdredis.clients/groupIdartifactIdjedis/artifactId…功能 1.签到 2.判断某天是否签到 3.统计某月的签到情况 4.统计某月连续签到了多少天 5.统计某月一共签到了多少次 代码 1.依赖 dependenciesdependencygroupIdredis.clients/groupIdartifactIdjedis/artifactIdversion4.0.1/version/dependencydependencygroupIdcn.hutool/groupIdartifactIdhutool-all/artifactIdversion5.8.18/version/dependency /dependencies 2.用户签到 import cn.hutool.core.date.DateField; import cn.hutool.core.date.DateTime; import redis.clients.jedis.Jedis;import java.text.SimpleDateFormat; import java.util.Date; import java.util.LinkedHashMap; import java.util.List; import java.util.Map;public class UserSign {Jedis jedis;public UserSign(Jedis jedis) {this.jedis jedis;}public String buildKey(int userId, Date date) {return Constant.SING_KEY userId : simpleFormatDate(date);}/*** 用户签到** param userId 用户id* return 签到情况*/public boolean sign(int userId, Date date) {DateTime now (DateTime) date;String key buildKey(userId, now);//这里需要减一是因为偏移量是从0开始的int offset now.dayOfMonth() - 1;return jedis.setbit(key, offset, true);}/*** 检测用户是否签到** param userId* param date* return*/public boolean isSign(int userId, Date date) {DateTime dateTime (DateTime) date;return jedis.getbit(buildKey(userId, date), dateTime.getDay() - 1);}/*** 统计签到情况** param userId 用户id* param date 日期对象* return*/public MapString, Boolean getSignInfo(int userId, Date date) {MapString, Boolean map new LinkedHashMapString, Boolean();//当月最后一天DateTime dateTime (DateTime) date;String type String.format(u%d, dateTime.getLastDayOfMonth());//查询当月所签到的二进制值ListLong longs jedis.bitfield(buildKey(userId, date), get, type, 0);//判断当月是否有签到情况if (longs null || longs.size() 0) return null;Long aLong longs.get(0);for (int i dateTime.getLastDayOfMonth(); i 0; i--) {DateTime now DateTime.now();now.setField(DateField.DAY_OF_MONTH, i);/*如果二进制右移一位再左移一位等于原来的值证明低位有0断签例如 6的二进制 01100110 右移一位 0011 左移回来 0110 还是不变,证明低位有0*/if (aLong 1 1 aLong) {map.put(simpleFormatDate(now, yyyy-MM-dd), false);} else {map.put(simpleFormatDate(now, yyyy-MM-dd), true);}//右移继续判断下一天aLong 1;}return map;}/*** 统计连续签到** param userId 用户id* param date 日期对象* return*/public int getContinuousSignNCount(int userId, Date date) {int count 0;int nowDay ((DateTime) date).dayOfMonth();//当月最后一天String type String.format(u%d, nowDay);//查询当月所签到的二进制值ListLong l jedis.bitfield(buildKey(userId, date), get, type, 0);//当月未签到if (l null || l.size() 0) return 0;//统计Long aLong l.get(0);for (int i 0; i nowDay; i) {/*如果二进制右移一位再左移一位等于原来的值证明低位有0断签例如 6的二进制 01100110 右移一位 0011 左移回来 0110 还是不变,证明低位有0*/if (aLong 1 1 aLong) {//这里需要考虑当天没有签到的情况if (i 0) break;} else {count 1;}//右移继续判断下一天aLong 1;}return count;}/*** 用户某月内一共签到了多少次** param userId 用户id* param date 日期对象* return*/public long signCount(int userId, Date date) {return jedis.bitcount(buildKey(userId, date));}/*** 固定日期格式** param date* return*/public static String simpleFormatDate(Date date) {return new SimpleDateFormat(yyyyMM).format(date);}/*** 用户自定义日期格式*java的开闭原则/* param date* param format* return*/public static String simpleFormatDate(Date date, String format) {SimpleDateFormat simpleDateFormat new SimpleDateFormat(format);return simpleDateFormat.format(date);} } 3.测试  import cn.hutool.core.date.DateTime; import redis.clients.jedis.Jedis;import java.util.Map; import java.util.Set;public class Test {public static void main(String[] args) throws InterruptedException {Jedis jedis new Jedis(192.168.57.128, 6379);UserSign userSign new UserSign(jedis);System.out.println(-----------------签到-----------------);DateTime now DateTime.now();for (int i 1; i 4; i) {now.setDate(i);System.out.println(now);userSign.sign(100, now);}System.out.println(-----------------查看某一天是否签到-----------------);DateTime now1 DateTime.now();boolean sign userSign.isSign(100, now1);System.out.println(sign ? UserSign.simpleFormatDate(now1, yyyy-MM-dd) :已签到 : 未签到);System.out.println(-----------------查看连续签到了几天-----------------);DateTime now2 DateTime.now();int continuousSignNCount userSign.getContinuousSignNCount(100, now2);System.out.println(UserSign.simpleFormatDate(now2) 月连续签到了 continuousSignNCount 天);System.out.println(-----------------总体签到情况-----------------);MapString, Boolean signInfo userSign.getSignInfo(100, DateTime.now());SetMap.EntryString, Boolean entries signInfo.entrySet();for (Map.EntryString, Boolean entry : entries) {System.out.println(entry.getKey() : (entry.getValue() ? √ : X));}System.out.println(-----------------统计一个月签到了多少天-----------------);DateTime now3 DateTime.now();long l userSign.signCount(100, now3);System.out.println(UserSign.simpleFormatDate(now3) 月签到了 l 次);} }
http://www.zqtcl.cn/news/941092/

相关文章:

  • 郑州做网站kuihuakeji软文发布的平台与板块
  • 一那个网站可以做一建题安全文化企业示范企业评价标准
  • 网站没有关键词收录phpstudy配置网站
  • 返利网站怎么做的做网站推广见客户的话术
  • 两个人看的视频在线观看成都网站seo厂家
  • 做汽车配件出口用什么网站好些微信朋友圈营销技巧
  • 怎样建设传奇网站空间什么做电子书下载网站
  • 自己怎么做dj 视频网站网站模板制作教程视频
  • 苏州瑞熙网站建设签名图片在线制作
  • 重庆建站模板大全给公司创建网站
  • king cms网站建设上海传媒公司有哪些
  • 优时代网站建设网站建设哪家公司最好
  • 做网站有多难平面设计学徒要学多久
  • 包装网站模板做西式快餐店网站
  • 泉州制作网站软件九歌人工智能诗歌写作网站
  • wordpress安装时失败网站后台seo设置
  • 顺企网吉安网站建设网站设计师岗位职责
  • 佛山市品牌网站建设价格网站设计模板免费
  • 澧县网站建设常用的oa系统办公软件
  • 江门网站推广哪里专业网站显示百度地图
  • 上海微网站网站的营销推广方案及预算
  • 灌南住房建设局网站南京网站开发南京乐识好
  • 万网网站建设步骤公司建设网站能提升什么竞争力
  • 门户网站 页面集成防内涵吧网站源码
  • 二手房发布网站怎么做有哪个网站有免费视频素材
  • 张浦专业做网站纯html5网站
  • qq互联 网站开发北京博洛尼装饰公司
  • 企业网站模板建站广州红盾信息门户网站
  • 做网站都用到哪些软件商品网站建设方案
  • 集美区网站建设下面软件是网页制作平台的是( )