除=:=
阻止不需要的整数转换之外:
1> 1=:=1.0.
false
将=:=
与一般条款一起使用有什么好处?
更好的表现?
答案 0 :(得分:25)
=:=
的最大优点是它只能以与模式匹配相同的方式返回相同的术语。所以你可以确定它们是一样的。 1
和1
是相同的字词,1
与1.0
不是。而已。如果您编写foo(A, B) when A =:= B -> A.
和bar(A, B) when A =:= B -> B.
之类的函数,它们的行为会相同。如果使用==
,则功能不同。它只是防止意外。例如,如果您进行某些键/值存储,则使用键1
存储值并在请求键1.0
时获取此值是不正确的。是的,==
会有一点性能损失,但最不惊讶的更重要。如果您打算比较相同的字词,只需使用=:=
和=/=
即可。仅在您打算比较数字时才使用==
和/=
。
答案 1 :(得分:0)
Eshell V5.9.3.1(以^ G中止)
1 GT; 1.0 == 1。
真正
2 - ; 1.0 =:= 1
。
假
3 GT;