Применение операторов
Как правило, программы принимают входные данные. Входные данные могут поступать из таких источников, как веб-запросы, файлы или пользовательский ввод через консоль или графический интерфейс пользователя. После того, как вы получите входные данные в программу, необходимо убедиться, что они находятся в формате, с которым может работать ваша программа. Вам также необходимо знать, как операторы выполняют операции и вычисления с данными.
Чтение входных данных из консоли
Для чтения данных из консоли вы можете использовать методы, найденные в пространстве имен 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 является предпочтительной.
Операторы
Вы узнали, как читать ввод с консоли, и увидели, как этот ввод сохраняется в виде строки. Вы видели, как использовать его в рамках операции, как преобразовать значение из строки в int. Функции преобразования существуют для большинства типов. Чтобы сделать что-то полезное с вашим кодом, вам нужно узнать об операторах. Используя математические операторы, вы можете складывать, вычитать, делить и т. д. Эти операторы поддерживают основные типы данных. Вот некоторые из наиболее важных операторов.
| Оператор | Описание |
|---|---|
| + | Добавляет два значения |
| - | Вычитает одно значение из другого |
| / | Делит левое значение на правое |
| % | Операция называется 'модуль', дает остаток от деления левого значения на правое. |
| <> | Проверяет, не равны ли два значения |
| = | Проверяет, равны ли два значения |
Например, чтобы использовать оператор модуля, вы вводите:
let no = 10
let isDivisibleByTwo = no % 2 = 0
printfn "Divisible by two %b" isDivisibleByTwo