首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在erlang中`when`保留字

在Erlang中,when是一个保留字,用于模式匹配和守卫语句中。它通常与模式匹配一起使用,用于在匹配成功时执行特定的操作。

when保留字的语法如下:

代码语言:txt
复制
Pattern when Guard1, Guard2, ..., GuardN -> Expression

其中,Pattern是要匹配的模式,Guard1, Guard2, ..., GuardN是守卫语句,Expression是在匹配成功且守卫条件满足时要执行的表达式。

when保留字的作用是在模式匹配过程中添加额外的条件,以过滤掉不符合条件的匹配项。它可以用于各种情况,例如限制变量的取值范围、类型检查、列表长度检查等。

以下是一些常见的使用场景和示例:

  1. 限制变量的取值范围:case Value of X when X > 0, X < 10 -> io:format("Value is between 0 and 10"); _ -> io:format("Value is not between 0 and 10") end.
  2. 类型检查:case Value of X when is_integer(X) -> io:format("Value is an integer"); X when is_float(X) -> io:format("Value is a float"); _ -> io:format("Value is not an integer or float") end.
  3. 列表长度检查:case List of [X, Y, Z] when length(List) =:= 3 -> io:format("List has 3 elements"); _ -> io:format("List does not have 3 elements") end.

在Erlang中,when保留字可以帮助开发者编写更加灵活和可读性强的模式匹配代码。它可以与其他模式匹配和守卫语句结合使用,以实现更复杂的逻辑判断和条件过滤。

腾讯云相关产品和产品介绍链接地址:

请注意,以上链接仅供参考,具体产品选择应根据实际需求进行评估和决策。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券