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

网站开发推广招聘东莞建筑设计公司排名

网站开发推广招聘,东莞建筑设计公司排名,物流运输做网站的素材,有个专门做3d同人网站基础知识:位运算 1. 两类表达式2. 项目中用到位运算的🌰 1. 两类表达式 2. 项目中用到位运算的🌰 在一个表中增加一个字段,控制报餐的6个字段包括午餐、晚餐、夜餐1、夜餐2、白班、晚班。正常在表中需要增加6个字段来做开关&…

基础知识:位运算

  • 1. 两类表达式
  • 2. 项目中用到位运算的🌰

1. 两类表达式

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2. 项目中用到位运算的🌰

在一个表中增加一个字段,控制报餐的6个字段包括午餐、晚餐、夜餐1、夜餐2、白班、晚班。正常在表中需要增加6个字段来做开关,但现在通过位运算只需要加一个字段。

具体的步骤如下:

  1. 定义一个整型变量,用于存储开启状态的位掩码。假设该变量名为stateMask

  2. 对于每个字段,定义一个与之对应的位掩码值,并使用<<运算符将其左移相应位置。假设这些字段的位掩码变量名分别为dayshiftMasknightshiftMasklunchMaskdinnerMasknight1Masknight2Mask

  3. 在设置字段的开启状态时,使用stateMask与对应的位掩码进行按位或操作,即使用|运算符。例如,要设置dayshift_time字段的开启状态,使用stateMask |= dayshiftMask;

  4. 在关闭字段的开启状态时,使用stateMask与对应的位掩码进行按位与操作,然后再取反,即使用~运算符。例如,要关闭nightshift_time字段的开启状态,可以使用stateMask &= ~nightshiftMask;

  5. 检查字段的开启状态时,使用stateMask与对应的位掩码进行按位与操作,然后再判断结果是否为0。如果结果为0,则表示对应的字段为关闭状态;如果结果不为0,则表示对应的字段为开启状态。例如,要检查lunch_time字段是否开启,可以使用(stateMask & lunchMask) != 0进行判断。

栗子代码

public class ConfigFieldControl {private static final int dayshiftMask = 1 << 0;     // 00000001private static final int nightshiftMask = 1 << 1;   // 00000010private static final int lunchMask = 1 << 2;        // 00000100private static final int dinnerMask = 1 << 3;       // 00001000private static final int night1Mask = 1 << 4;       // 00010000private static final int night2Mask = 1 << 5;       // 00100000public static void main(String[] args) {int stateMask = 0;// 开启 dayshift_time 和 lunch_time 字段stateMask |= dayshiftMask;stateMask |= lunchMask;// 关闭lunch_timestateMask &= ~lunchMask// 检查字段的开启状态boolean isDayshiftTimeEnabled = (stateMask & dayshiftMask) != 0;boolean isNightshiftTimeEnabled = (stateMask & nightshiftMask) != 0;boolean isLunchTimeEnabled = (stateMask & lunchMask) != 0;boolean isDinnerTimeEnabled = (stateMask & dinnerMask) != 0;boolean isNight1TimeEnabled = (stateMask & night1Mask) != 0;boolean isNight2TimeEnabled = (stateMask & night2Mask) != 0;System.out.println("dayshift_time is enabled: " + isDayshiftTimeEnabled);System.out.println("nightshift_time is enabled: " + isNightshiftTimeEnabled);System.out.println("lunch_time is enabled: " + isLunchTimeEnabled);System.out.println("dinner_time is enabled: " + isDinnerTimeEnabled);System.out.println("night1_time is enabled: " + isNight1TimeEnabled);System.out.println("night2_time is enabled: " + isNight2TimeEnabled);}
}

总结:

  1. 这种设置可以实现对多个字段的开启与关闭状态的控制,是因为它利用了位运算的特性和位掩码的概念。

  2. 在这个设置中,每个字段都有一个对应的位掩码,通过将位掩码与状态掩码进行按位与或按位非的操作,可以实现对字段的开启和关闭。

  3. 具体来说,每个字段的位掩码是一个唯一的二进制值,其中只有一个位为1,其余位为0。位掩码可以通过左移操作符<<来生成,将1左移相应的位数。

  4. 当要将某个字段设置为开启状态时,将该字段的位掩码与状态掩码进行按位或操作,相当于将该位设置为1,其他位保持不变。这样就能表示该字段为开启状态。

  5. 当要将某个字段设置为关闭状态时,将该字段的位掩码取反后与状态掩码进行按位与操作,相当于将该位设置为0,其他位保持不变。这样就能表示该字段为关闭状态。

  6. 通过按位与运算,可以将状态掩码中的1只保留在对应位为1的字段的位掩码上,其他位都变为0。然后再进行条件判断,若结果不为0,则表示对应的字段为开启状态。

  7. 这种方式可以节省存储空间,每个字段的开启状态只占用一个位,而不是使用额外的布尔值或整型来记录每个字段的状态。同时,通过位运算,可以很方便地实现对多个字段的同时开启和关闭。

http://www.yayakq.cn/news/373271/

相关文章:

  • 网站可信认证必做千万别学建筑工程技术
  • 品牌建设网站有哪些wordpress网站工具栏
  • 地方门户网站还能做吗武威百度做网站多少钱
  • 网站策划编辑招聘建设网站需要机房吗
  • 柳州网站建设源码wordpress支持空格键
  • 网站psd模板建设一个网站app全过程
  • 专业做设计师品牌网站网站属于什么公司
  • hmm船公司网站网站推广公司ihanshi
  • 服务网站建设公司网站建设一般报价
  • xml是用来做网站的嘛wordpress 调用当前分类
  • 一锅汤资源分享网站建设大全网站开发需求 模板
  • 广西城乡与住房建设厅网站wordpress 随机浏览量
  • 网站建设 工作计划网上备案查询
  • 泰州市建设工程质量监督站网站广西网站建设制作
  • 网站域名解析失败什么网站可以做海报
  • 残联网站建设自学网站开发条件
  • 网站关键词设置技巧全球创新设计
  • 门户网站建设理由网站建设脚本
  • 长乐市住房和城乡建设局网站建造师职业人才网平台
  • 如何选择一个好的网站建设公司网站设计 网站建设 手机网站建设
  • 怎么做网站后台界面北京房产网北京二手房
  • 南京网站网站建设学校wordpress管理配色
  • 网站建设中英语网站怎么做直播
  • 网站跳转如何做wordpress网页缓存插件
  • 网站建设项目方案怎样做科普视频网站
  • 无锡网站推广哪家好东莞seo公司
  • 设计师个人网站架构中山建网站多少钱
  • 负面信息搜索引擎 网站网页制作工具下载
  • 网站不备案会怎样兰州最新消息今天又封了
  • 专业网站开发多少钱网站托管做的好的公司