小编Xan*_*kar的帖子

F#打印出2D字符串数组

我正在制作一款名为Neutron的棋盘游戏.

let boardArray = array2D [ ["*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"];
                           ["*"; "1"; "*"; "2"; "*"; "3"; "*"; "4"; "*"; "5"; "*"];
                           ["*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"];
                           ["*"; "0"; "*"; "0"; "*"; "0"; "*"; "0"; "*"; "0"; "*"];
                           ["*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"];
                           ["*"; "0"; "*"; "0"; "*"; "N"; "*"; "0"; "*"; "0"; "*"];
                           ["*"; "*"; "*"; "*"; "*"; "*"; "*"; "*"; …
Run Code Online (Sandbox Code Playgroud)

printf f# multidimensional-array

5
推荐指数
1
解决办法
405
查看次数

F#搜索具有多个值/输入的记录

对不起,如果这看起来像一个愚蠢的问题,我仍然想弄清楚F#是如何做的

所以,说我建立了以下记录:

type person = 
{ fName: string;
  lName: string;
  age: int;
  weight: int; }
Run Code Online (Sandbox Code Playgroud)

然后我创建一些人来填充记录

let joe   = {fName = "JOE";   lName = "QUAIL"; age = 34; weight = 133}
let jason = {fName = "JASON"; lName = "QUAIL"; age = 34; weight = 166}
let jerry = {fName = "JERRY"; lName = "PAIL";  age = 26; weight = 199}
Run Code Online (Sandbox Code Playgroud)

因此,我想要做的是至少需要两个或三个参数(比如age,和lName),我想通过搜索person记录所有谁满足输入参数的人age,并lName与目标是将它们添加到列表中.所以在这个例子中,我想通过记录搜索姓氏"QUAIL"和34岁,这将得到我和乔和杰森

在F#中,我认为模式匹配是可行的方法,但我不知道如何实现模式匹配结构.

我的想法是使用这样的结构:

let myPeeps =
 List.filter (function
  | …
Run Code Online (Sandbox Code Playgroud)

f# records pattern-matching

3
推荐指数
1
解决办法
149
查看次数