Catch

Catch[expr]

返回在运行 expr 时产生的第一个 Throw 的参数.

Catch[expr,form]

返回 form 匹配 tag 的第一个 Throw[value,tag] 中的 value.

Catch[expr,form,f]

返回 f[value,tag].

更多信息

  • 如果在运行时不生成 Throw,则 Catch[expr,] 总是返回 expr 的值.
  • form 可以是任何表达式,而且经常是一个模式.
  • Throw[value,tag] 中的 tag 在每次与 form 比较时重新运算.

范例

打开所有单元关闭所有单元

基本范例  (3)

一运行 Throw ,就退出最接近的 Catch

定义一个可以抛出异常的函数:

Catch 的结果正是被 Throw 抛出的:

当判别式被满足时,利用 Throw 退出循环:

范围  (5)

Catch 可以从任何函数内捕捉一个 Throw

最近的 Catch 捕捉 Throw

Catch 挑选出第一个被运行的 Throw

Throw 不需要词法式地出现于 Catch 内部:

一个可以抛出若干不同的异常的函数:

一个用于可能的异常的处理程序:

推广和延伸  (3)

捕捉标记为 uThrow

内层的 Catch 捕捉到 Throw

外层的 Catch 捕捉到 Throw

使标记保持在局部:

应用  (3)

给出 1010 以后的第一个质数:

给出模除19等于1的17的第一个幂:

如果一个迭代变得太大,则停止运算:

属性和关系  (1)

如果产生信息,利用 Check 抛出一个异常:

Wolfram Research (1988),Catch,Wolfram 语言函数,https://reference.wolfram.com/language/ref/Catch.html (更新于 1996 年).

文本

Wolfram Research (1988),Catch,Wolfram 语言函数,https://reference.wolfram.com/language/ref/Catch.html (更新于 1996 年).

CMS

Wolfram 语言. 1988. "Catch." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 1996. https://reference.wolfram.com/language/ref/Catch.html.

APA

Wolfram 语言. (1988). Catch. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/Catch.html 年

BibTeX

@misc{reference.wolfram_2024_catch, author="Wolfram Research", title="{Catch}", year="1996", howpublished="\url{https://reference.wolfram.com/language/ref/Catch.html}", note=[Accessed: 17-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_catch, organization={Wolfram Research}, title={Catch}, year={1996}, url={https://reference.wolfram.com/language/ref/Catch.html}, note=[Accessed: 17-November-2024 ]}