当前位置: 首页 > news >正文

【F#学习】元组 Tuple

元组是不可变的有序的、大小固定的一组数据。内容可以包含各种类型——包括元组本身。

用括号()和逗号,来声明一个元组。

("one", 2) // Tuple pair (2 values)
("one", 2, true) // Tuple triplet (3 values)

只有拥有相同数据类型和相同大小的元组才可以被比较是否相等。当伽仅当其内所有元素分别相等的时候,称这两个元组相等。

(1, 2) = (1, 2)
// => true(1, 2) = (2, 1)
// => false(1, 2) = (1, "2") // 类型不同
// compiler error(1, 2) = (1, 2, 3) // 长度不同
// compiler error

读取元组中的元素有多种方式:

  • 函数fstsnd
  • 元组解构
  • 模式匹配
let person = ("Jordan", 170)// 方式1: fst/snd
let name1 = fst person
let length2 = snd person// 方式2: 解构
let (name2, length2) = person
// => name2 = "Jordan"
// => length2 = 170// 方式3: 模式匹配
match person with
| name3, length3 -> printf "%s: %d" name3 length3
http://www.gsyq.cn/news/12372.html

相关文章:

  • 洛谷题单指南-进阶数论-P3861 拆分
  • 线程的状态流转
  • AI工作流详解以及应用场景(AI)
  • 非结构网格中计算场梯度的手段比较
  • 前端模块化——彻底搞懂AMD、CMD、ESM和CommonJS
  • 实用指南:Java基础(十四):枚举类详解
  • VGGT: Visual Geometry Grounded Transformer
  • 微信小程序使用地图map 实现定位和实时绘画轨迹
  • 嵌入式入门,基于keil5用stm32寄存器和标准库实现LED流水灯
  • 小人鱼的数学题 - Li
  • CentOS将软件源修改为国内源
  • 【C++进阶】C++11 的新特性 | lambda | 包装器 - 实践
  • orcad放置器件时器件不在预览框中心
  • 从零开始:VirtualBox 虚拟机安装与 CentOS 7 部署 + 双网卡网络配置指南
  • 【光照】[物理模型]中的[BRDF]是什么?
  • 《Linux Robust锁》
  • Manim实现气泡特效
  • C# Inno Setup
  • CF2139虚拟游记
  • 融合多元定位技术,帮助应用破解精准定位难题
  • hutool主要内容list
  • Kurt-Blender零基础教程:第2章:建模篇——第3节:陈列/父子级/蒙皮/置换修改器与小狐狸角色建模 - 教程
  • 学习:uniapp全栈微信小程序vue3后台(26) - 指南
  • HTML5介绍(HTML5特性、HTML5功能) - 指南
  • 读书笔记:Oracle 自动索引:让数据库自己管索引?
  • 故障处理:Oracle RAC集群CTSS时钟同步故障案例分析与解决
  • PostgreSQL技术大讲堂 - 第106讲:分区表索引优化
  • AI智能体:从认知到实践
  • vue3小坑之-为什么把ref定义的数组赋值给数组对象后取值为空数组?
  • 【C++STL详解】带头双向循环结构 + 双向迭代器,核心接口 + 排序效率 + 避坑指南 - 教程