应用运算符
通常,程序接受输入。 输入可能来自各种源,如通过控制台或图形用户界面的 Web 请求、文件或用户输入。 在你将输入数据导入程序后,需要确保它采用的是程序可以处理的格式。 你还需要了解运算符如何对数据执行操作和计算。
从控制台读取输入
若要从控制台读取,可以使用在 System 命名空间中找到的方法。 你希望使用类似 Console.Readline() 的内容。 此方法会读取换行符之前的所有字符,并将这些字符放入一个字符串中。 下面是使用此方法的示例。
System.Console.Write "Type a value:"
let str = System.Console.ReadLine()
printfn "You typed %s" str
此代码可以很好地存储用户在字符串变量中输入的内容。 但是,如果程序需要处理用户输入,并且需要将其视为一个数字或布尔值以在操作中使用它,会发生什么情况? 此时,需要转换数据。
在数据类型之间进行转换
你已了解 F# 如何通过为变量赋值来隐式推断变量的类型,如下所示:
let myNumber = 3
但是,如果你有一个字符串,需要将其转换为 int,该怎么办?
let myString = "3"
主要方法有两种:
-
System.Int32.Parse():使用 .NET 中的方法,即Parse()命名空间中的System函数:System.Int32.Parse()。 - 内置
int:可以使用内置int函数。
若要使用第一种方法,请编写如下代码:
let first = "32"
let numberVersion = System.Int32.Parse first
printfn "Number %i" numberVersion // Output: Number 32
若要使用内置 int 函数,输入如下代码:
let first = "32"
let numberVersion = int first
printfn "Number %i" numberVersion
那么,该使用哪一种? 首选具有内置 int 函数的版本。
运算符
你已了解如何从控制台读取输入,并已了解输入如何以字符串形式存储。 为了在操作中使用它,可以将值从 string 转换为 int。大多数类型都存在转换函数。 为使代码执行一些有用的操作,需要了解运算符。 通过使用数学运算符,可以进行加、减、除等运算。 基本数据类型支持这些运算符。 下面是一些最重要的运算符。
| 操作员 | 说明 |
|---|---|
| + | 两个值相加 |
| - | 两个值相减 |
| / | 左侧值与右侧值相除 |
| % | 称为“取模”,左侧值与右侧值相除得到余数 |
| <> | 检查两个值是否不相等 |
| = | 检查两个值是否相等 |
例如,若要使用取模运算符,可以输入:
let no = 10
let isDivisibleByTwo = no % 2 = 0
printfn "Divisible by two %b" isDivisibleByTwo