问题标签 [boolean-logic]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 确定变量是否等于值“列表”中的值的最简洁方法
如果我在 C# 中有一个变量需要检查以确定它是否等于一组变量中的一个,那么最好的方法是什么?
我不是在寻找将集合存储在数组中的解决方案。我很好奇是否有解决方案以某种方式使用布尔逻辑来获得答案。
我知道我可以做这样的事情:
我很想知道我是否可以做更多这样的事情:
显然以上方法行不通,但我有兴趣看看是否有比我的第一个示例更简洁的方法,它必须为每个测试值一遍又一遍地重复相同的变量。
更新:
我决定接受 CoreyN 的回答,因为这似乎是最简单的方法。我认为它很实用,而且对于新手来说仍然很容易理解。
不幸的是,在我工作的地方,我们的系统使用 .NET 2.0 框架,而且短期内没有机会升级。除了我能想到的最明显的解决方案之外,是否还有其他不依赖 .NET 3.5 框架的解决方案:
javascript - 什么是位运算符?
我是一个写代码只是为了好玩的人,在学术或专业环境中都没有真正深入研究过,所以像这些按位运算符这样的东西真的让我无法理解。
我正在阅读一篇关于 JavaScript 的文章,它显然支持按位运算。我一直在某些地方看到此操作,并且我尝试阅读以弄清楚它到底是什么,但我似乎根本不明白。那么它们是什么?清晰的例子会很棒!:D
还有几个问题——按位运算有哪些实际应用?你什么时候可以使用它们?
c# - 有没有时候 && (AndAlso) 与 & (And) 无关
如果我正在评估两个变量而不是两个方法调用,那么天气是否重要,我使用“&&”或“&”
此外,我用于 C# 3.0 / .NET 3.5 的一本书只提到了 && 运算符,& 运算符会消失吗?
hardware - 您将如何处理此数字逻辑系统中的特殊情况?
我发布了这个数字逻辑图作为另一个 stackoverflow 问题的答案。它描述了一个逻辑系统,该系统将以 Verilog 或 VHDL 编码并最终在 FPGA 中实现。
替代文字 http://img145.imageshack.us/img145/5125/bitshifterlogicdiagramkn7.jpg
图中的编号框表示字段中的位。每个字段都有K位,电流和掩码的位将由计算机系统提供(使用锁存寄存器或等效物)。接下来的位将被读回同一计算机系统。
只要掩码字段中至少设置了一位,并且当前位字段中恰好设置了一位,我发布的解决方案就可以工作。这个想法是,在计算机系统执行了某些任务(调度操作,在原始问题中)之后,下一个位域将成为当前位域。
所以,我的问题是: 你将如何修改这个系统,以便它正确处理当前位字段全为零(未设置位)的特殊情况?就目前而言,如果current中的所有位都为零,则输出也将为零,无论掩码中的位设置为什么。
理想情况下,如果当前全为零,则掩码中的最低设置位应设置在next中。该系统还应保持可扩展至任意数量的位 (K),而无需添加成倍增加的逻辑门。最初问题的精神是想出一个可以直接实现任意位数的解决方案。
firefox - 布尔 Javascript 表达式在 Firebug Watch 窗口中返回 true,但在代码中返回 false?
我有一个名为“objFrame”的 IFrame 网页。
在 Javascript 文件中,执行以下语句:
var useWindow = (typeof(window.objFrame) != "undefined" && typeof(window.objFrame.contentWindow) != "undefined");
运行代码时(通常或使用调试器单步执行),表达式
(typeof(window.objFrame) != "undefined" && typeof(window.objFrame.contentWindow) != "undefined")
当我将它粘贴到 Firebug 的 Watch 窗口中时为 true,但 useWindow 的值为 false。
我正在使用 Firefox 3.0.6 和 Firebug 1.3.2。
我在这里想念什么?请告诉我这是我的一个简单的语法错误(?!?)
python - 如何在 Python 中使用布尔值“和”
在 C# 中,我们可以&&
像这样使用 (boolean and):
但是用 python 试试:
我收到一个错误:SyntaxError: invalid syntax
如果我使用单个&
,至少我没有语法错误。如何&&
在 Python 中进行布尔运算?
c++ - 翻转布尔值的最简单方法?
我只想根据它已经是什么来翻转一个布尔值。如果它是真的 - 让它成为假的。如果它是假的 - 让它成为真的。
这是我的代码摘录:
c++ - 使用 && 和 || 有什么区别 在 do...while 循环中?
我知道“while”中的测试条件有问题。但我无法弄清楚。
当用户的输入既不是'n'也不是'N'时,循环应该继续打印代码“你在while循环中”。一旦按下“n”或“N”,程序将终止。
但是对于我的代码,无论我输入什么字符,程序都会继续循环代码。但是当我改变'||' '&&',程序可以根据需要运行。任何人都可以告诉我发生了什么?
math - 如何将命题公式转换为合取范式(CNF)?
如何将此方程转换为 CNF?