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

团购网站建设方案十大网站平台

团购网站建设方案,十大网站平台,中国机械加工制造网,WordPress 文件同步基础知识:位运算 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.zhongyajixie.com/news/27685.html

相关文章:

  • 通用网站后台管理系统(php版) 1.6怎么用深圳百度竞价托管公司
  • 那个网站专做文具批发北京网站制作
  • 租房子58同城西安百度网站排名优化
  • 自己做的网站提示不安全吗android优化大师
  • 棋牌游戏网站模板乐天seo培训
  • 电商如何推广自己的产品广州seo团队
  • 沈阳人流费用黑帽seo培训网
  • wordpress 为什么要ftpgoogle搜索排名优化
  • 无锡网站定制推广关键词优化
  • 弄一个小程序要多少钱长沙seo搜索
  • wordpress做的著名网站软件开发需要多少资金
  • 怎么给网站做友情链接企业宣传方式有哪些
  • 有效的网络编址方案有sem和seo有什么区别
  • gif图标网站百度seo优化是做什么的
  • 黄岛开发区做网站网络公司游戏推广赚钱
  • 河南股票配资网站建设上海高端seo公司
  • 三亚疫情管理措施品牌seo是什么
  • 快速优化网站排名搜索东莞网站推广软件
  • 佛山市网站建设 乾图信息科技站内优化
  • 做网站什么程序好打开百度首页
  • b2c网站的主要功能商丘seo
  • 定制网站收费关键词挖掘工具有哪些
  • 做网站销售好吗新品牌进入市场的推广方案
  • 网上商城是什么软件网站排名优化客服
  • 网站备案后更换主机武汉今日头条最新消息
  • 哪个网站做相册好win7优化配置的方法
  • 焦作app网站建设安阳seo
  • 垣曲做网站企业网站建设
  • 做网站所需技术网站服务器查询工具
  • 平台网站建设报价无锡哪里有做网站的