
F#
F#学习,给自己看,瞎写咯。
I_AM_KK
只看代码不说话
展开
-
F#数组相关问题记录
StringStringBuilder是一种数据类型,代表字符串可以更改open System.Textlet fa:StringBuilder array = Array.init 3 (fun index -> new StringBuilder(""))let sa = Array.copy fafa.[0] <- new StringBuilder("test1")fa.[0].Insert(0,"test22")结果为:val fa : StringBuilder ar原创 2020-12-26 14:28:54 · 141 阅读 · 0 评论 -
F#入门学习(十四)---数组
元组由不同类型的有序的元素构成。列表由同类型的不可变的元素构成。序列由由同类型的不可变的元素构成,并且具有无限数据的能力。以上数据类型默认都是不可变的。今天要学的数组是由相同类型的连续数据元素构成、具有固定大小且小标从0开始,并且可以修改。使用数组常量定义数组let a1 = [|0;2;4|]//定义一行的时候需要加;let a2 = //分开定义的时候不需要 [| 0 2 4 |]结果为:val a1原创 2020-07-12 22:40:00 · 323 阅读 · 0 评论 -
F#入门学习(十三)---选项
选项表示原创 2020-05-17 23:25:15 · 273 阅读 · 0 评论 -
F#入门学习(十二)---序列
序列与列表均用来表示类型相同的元素的有序集合。特点:序列中的元素是延迟计算,需要的时候才计算;列表则一次生成所有元素。序列的延迟计算使它可以表示无线的数据结构。序列在F#库中定义为Microsoft.FSharp.Collections.Seq,是可枚举的数据结构,对应的.NET库为System.Collections.Generic.IEnumerable.即创建一个f#序列,就是创建...原创 2020-05-14 03:18:08 · 878 阅读 · 0 评论 -
F#入门学习(十一)---列表
列表列表是多个相同类型元素使用符号对[ ] 所构成的式子,元素使用; 分隔。与元组的区别()与[ ], 与 ;列表常量定义及列表元素访问//定义let list1 = [0;2;4]//访问let x1 = list1.[0] //1let x2 = list1.[2] //2let x3 = List.nth ...原创 2020-04-12 20:01:35 · 453 阅读 · 0 评论 -
F#入门学习(十)---元组
这篇博客开始讲解元组、列表、序列和选项类型。元组元组是一些未命名但经过排序的值的分组,这些值可能具有不同的类型。未命名,就是找不到这个东东,它本身就是常量。排序,就是先写什么,后写什么,决定了元组就是什么,和为命名有着相同是意味儿。不同的类型,就是元组本身就是一个常量,这个常量的类型是我们自己写的常量组合体,不同的类型组合成一种类型。看完这三个特点,我们可以把元组理解为我们自己定...原创 2020-01-17 16:33:12 · 486 阅读 · 0 评论 -
F#入门学习(九)
异常处理共有两种异常,一种是F#异常,一种是.NET异常,和之前提到的F#库和.NET库一样,看这个语言的视角不同,分法也就不一样。F#需要用户定义后才能使用,.NET异常可以直接用。所有.NET异常都继承其框架里面的异常基类Exception类,Exception类有很多属性:StackTrace属性 追踪错误发生位置,包括源文件和行号等信息。InnerException属性 若...原创 2020-01-16 14:42:24 · 460 阅读 · 0 评论 -
F#入门学习(八)
在程序设计中,经常需要检查某值是否在一个范围内,这个范围我们称为模式,比对的过程叫模式匹配。用我们之前学的表达式可以完成,这里用一种更方便的表达式match表达式match 测试表达式 with| 模式1 [when条件] ->结果表达式1| 模式2 [when条件] ->结果表达式2|…必须包含所有情况,否则报错,最后可以用_来表示剩下的所有情况。直接上代码体会。...原创 2019-12-12 22:13:50 · 277 阅读 · 0 评论 -
F#入门学习(七)
mutable可变值关键字F#这个语言与其他入门语言有个很大的不同,那就是,定义的值是不可变的。也就是说,默认情况下,系统自动认为值是不可变的。这样的两行代码在C语言可行,在F#中却说x的定义重复。不可变值有很多优点:内在的线程安全在推理和理解方面较简单有较高的安全性但是如果必须用到可变的值呢?就可以使用mutable关键字了。let mutable x = 5xx...原创 2019-12-08 16:31:59 · 391 阅读 · 0 评论 -
F#入门学习(六)
静态成员与实例成员实例成员就是具体的x或者y,后面加上.let y = x. //引用.NET库的实例成员的例子,注意后面没写完,系统自动感知,弹出方法和属性,打开的是System命名空间。.NET库成员第一个字母全部大写let y = String. //引用F#库的静态成员的例子,注意后面没写完,系统自动感知,弹出方法和属性,打开的是Core.System模块。F#库员第一个字母全...原创 2019-12-03 18:01:07 · 238 阅读 · 1 评论 -
F#入门学习(五)
前面几个讲的是基础知识和基本类型,现在开始讲的是F#的库。什么是库?我个人的理解是:没学之前,你无论实现什么功能都得自己写,举个 例子,你写了一个...原创 2019-11-24 19:55:56 · 300 阅读 · 0 评论 -
F#入门学习(四)
printfn的使用写printfn,主要是为了方便查阅3+3//val it : int = 63+3printfn “%x” it;;//6val it : unit = ()如果不加;;就运行不出来,必须加;;,是什么意思呢?F#使用;;加上回车表示向交互环境提交输入语句。提交后交互环境执行这些语句。it是交互环境下系统默认名称。不提交系统不知道it是什么。一般来...原创 2019-11-19 16:35:26 · 268 阅读 · 0 评论 -
F#入门学习(三)
求函数特征,啥是函数特征,就是函数是什么类型,特征是一个专业名词而已namespace Library1type Color =|Red|Green|Bluetype Type0() =member type0.method1()=printfn"te"书上代码太多,至此为止我们还没学这么多,我感觉没有意义,所以只打了这两个。type Color =| Red| Gree...原创 2019-11-18 21:43:30 · 326 阅读 · 0 评论 -
F#入门学习(一)
let绑定常量let x=32xlet x1 = 32.0let说32你是x的,32.0你是x1的。val x : int = 32val x1 : float = 32.0let绑定函数let add x y = x+ylet x1 = add 8 9add是一个名字,他是传给我俩值,我用来加x1的值就是 add 干活的结果。val add : x:int -> ...原创 2019-09-27 21:35:46 · 455 阅读 · 2 评论 -
F#入门学习(二)
F#学习F#基元类型设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图F#基元类型设定内容居中、居左、居右使用:---------:居中使用:----------居左使用----------:居右第一列第二列第三列第一列文本居中第二列...原创 2019-09-27 20:25:07 · 212 阅读 · 0 评论