F# 学习笔记(1/n)

 

算术运算

F#中的基本数据类型和C#中的简单类型非常相似,例如 doule对应了CLR中的System.Double类型。需要注意的是在F#中有三个数据类型:bigintbignum以及unitbigint是任意的大整数等同于Math.BigInt,使用的时候需要在数值后加上“I”后缀。bignum是任意精度的有理数,等同于Math.BigNum类型。使用的时候需要在数值后加上“N”后缀。unit表示只有一个值的类型,常常用“()”来表示,对应的.Net 名称为 Core.Unit

操作符

除了常见的4则运算以及%余数运算符,还有“-”取负数运算符,例如 -5+6 输出为-11


以上代码展示了如何定义参数和返回值使用的不同类型。

第一个addresult默认都是int类型,第二个定义其中a参数使用float类型,为了保证精度完整性,所以整个函数返回的仍然是float类型,第三个是第二个的显式返回类型定义。

位操作符

操作符

含义

C#

&&&

按位与运算

&

|||

按位或运算

|

^^^

异或运算

^

~~~

按位求补

~

<<< 

左移运算符

<< 

>>> 

右移运算符

>> 

简单字符串操作

F# 的字符串类型是在.Net类型基础上简化得来的,它的存储形式为一组Unicode UTF-16字符序列。既然是字符序列,那么我们就可以通过索引指针的方式访问其中任意位置的字符。使用字符串时,除了可以使用C#常用的表达方式之外,还可以使用形如”abc”B这样的表达方式,来表示字符串abc将转化为byte[]数组。


如果想表示称字符
Char类型,如同C#一样,使用单引号,例如let MyChar = ‘A’;;

F# 同样支持转移字符,这方面和C#在语法上没有多大区别。例如”"r” 表示回车,”"udddd”表示Unicode编码,”"Udddddddd”表示长Unicode编码(其中d表示数字)。

字符串支持 +方式的连接,也可以直接使用StringBuilder类来Append字符串。

字符串一旦创建完毕,不可以通过索引的方式修改其中的内容。如下图所示:


下面演示如何使用
StringBuilder来构建不定长度的字符串


以上代码初始化
st变量是一个StringBuilder类型,通过Append方式附加字符串,最后使用ToString方法输出。

posted @ 2008-02-22 13:25  大约在冬季  阅读(661)  评论(1编辑  收藏  举报