问题标签 [case-statement]
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.
functional-programming - 简单的 Lisp Case 语句问题 - 与 nil 相比的问题
我正在尝试使用 case 语句使一些代码更具可读性。它似乎是一系列 if 语句,但由于某种原因,case 语句总是接受与 nil 的比较,即使它不是真的。有人可以澄清为什么会发生这种行为吗?
例子:
在上面的例子中,第一个实例返回 nil,即使 'a 显然不是 nil。尝试用 if 语句做同样的事情就像我期望的那样:
我假设有一些关于我不理解的案例陈述的行为。任何帮助,将不胜感激。
编辑:澄清一下,我知道 'a 不会被评估。我只是模拟了这个例子来创建一个 case 语句的目标绝对不是 nil 的情况。
我正在使用 xlisp-plus,但我将尝试真正的 clisp 安装,看看它的行为是否不同。
编辑(再一次):安装了 CLISP,它在那里工作正常。不值得费心去研究为什么 xlisp 不同。谢谢大家的理智检查。
c++ - 加快大型案例陈述的方法?C++
我正在运行一个文件并处理 30 种左右不同的片段类型。所以每次,我都会读入一个片段并将它的类型(十六进制)与我知道的片段进行比较。这是快还是有其他方法可以让我更快地做到这一点?
这是我正在使用的代码示例:
它贯穿其中大约 30 个,当有数千个片段时,它可能会有点突兀。有人会建议我如何加快这个过程?
谢谢!
mysql - MySQL if then/case 语句
那里!我正在 mySQl Front 4.1 中编写 mysql 脚本。
我对 if then, case 语句有疑问。
我有下一个代码:
Front不想执行它。为什么?有人可以解释一下这里有什么问题吗?
mysql - 带连接的 SQL 视图
我有 3 张桌子
节点表——Nodeid,节点关系id(NodeRelID)
节点关系表——id、Nodeid、Node Link id
Eventstatus 表 - id、Nodeid、节点状态。
我想创建一个视图,在其中显示每个节点的 id 以及与之相关的节点的状态。我在这里做过;
现在我想检索任何没有关系的节点并自动给它们一个 0 来代替关系状态,我希望它存储在同一个表中,所以我通过视图中的 case 语句尝试了这个。像这样:
有人可以指出我正确的方向。
c# - 相同的案例条件
我正在将一些 VB.NET 代码转换为 C#,因为我对它更满意,它可以帮助我更快地解决问题。但是,我遇到了这段代码,这在 VB.NET 中不是错误——但是将其转换为 C# 会产生编译器错误。
VB.NET 代码
C# 转换代码
错误是:
标签 'case "FSTF":' 已出现在此 switch 语句中。
这里的解决方案是什么——这是否意味着在 VB.NET 代码中,第二个 case 语句只是一个虚拟语句——还是第一个 case 语句是一个虚拟语句?
sql - Sql Server:与 NULL 比较时,CASE 语句会出现意外行为
鉴于:
下面的 Select 语句:
问题:
我希望这会返回 0,但它会返回 1。什么给出了?
haskell - 在 Haskell 中,如何在 Dynamic TypeRef 上做一个 case 语句
我尝试了以下方法:
但它会警告重叠模式匹配并且无法正常工作。它总是转到第一个模式而不是正确的模式。
sql - 多个字段的 CASE 语句结果
运行 PostgreSQL 7.x(是的,我正在升级)
例子:
有没有办法让一个case语句给出两个字段作为结果,因为处理的数据是相同的,只是标签不同。
sql - 伪 IF/案例帮助
运行 PostgreSQL 7.x(是的,我正在升级)
问题:
如果没有返回数据,我需要设置三到四个字段。
正在考虑这样的事情
关于我如何做到这一点的任何想法?
所以想一个 IF 条件
如果这些其他字段获得这些值,则保持返回的值不变
sql - SORT 的成本正在减慢我的查询速度
PostgreSQL 7.4(是的升级)
所以在我的 WHERE 条件下,我有这个
替代语法,但成本没有变化
寻找一种成本有效的方法来通过字符串的开头限制结果。因此,如果字符串以 01、123、5555、44444 或 99 开头,则将其添加到结果集中。
有什么想法吗?
注意:FieldID 被索引查看解释数据以查看查询中的瓶颈,当添加上述代码时,排序成本会上升并减慢数据集/结果的返回速度。
解释的输出:
由于查询很复杂,还有很多,但是如果我删除部分代码,排序成本就会下降