前言:最近在了解F#,无意中看到一个日文的教程(http://techbank.jp/Community/blogs/gushwell/default.aspx),觉得很不错,所以希望可以和大家一起分享、学习。

目前为止我们虽然体验了F#整数和浮点数之间的区别,short, int, double float之间又有什么区别呢?试着看看如下代码:
let num1 = 10s
let num2 = 10
let num3 = 10L
let num4 = 10.0
let num5 = 10.f

这些数值常量的写法和C#很相似。
但是这些是否和我们预期的类型一致呢,可以实践确认下。稍微调查后我就发现了F# interactive功能。通过Alt + Enter就可以在主窗口下显示F# interactive窗口以用来调查它们。 输出结果如下:
val num1 : int16
val num2 : int
val num3 : int64
val num4 : float
val num5 : float32

F#的float和C#的double相当。而float32就是C#的float,确实有点混乱。不过实际上使用float32几乎没有,10.0类似的常量声明就可以了。
其他类型的写法如下:
10u                     // uint
10us                    // ushort
10ul                    // ulong
120y                    // sbyte
0xFFuy                // byte

由于是.NET语言、我们还可以试试decimal类型:
let num6 = 10.5m