Relational operators in F#
February 25, 2017 Leave a comment
The relational operators in F# don’t behave in exactly the same way as they do in popular OOP languages like C# or Java.
The greater-than and less-than operators are the same, here’s an example:
let value = 5 let trueOrFalseGt = value > 5 let trueOrFalseLt = value < 5
The boolean values will be false as expected:
val trueOrFalseGt : bool = false
val trueOrFalseLt : bool = false
F# uses ‘=’ for equality as opposed to ‘==’ like in C# and Java:
let trueOrFalseEq = value = 5
val trueOrFalseEq : bool = true
So the equal sign in F# is used for both variable assignment and equality checking like in Visual Basic.NET .
Checking for inequality is a funny one:
<>
…so it’s nothing vaguely like ‘!=’ in C#:
let trueOrFalseNEq = value <> 5
val trueOrFalseNEq : bool = false
View all F# related articles here.