Haskell 程式將字串轉換為整數
本教程將幫助我們將字串轉換為整數。在 Haskell 中,將字串轉換為整數的過程通常涉及使用來自 Text.Read 模組的 **read** 函式或 **readMaybe** 函式。另一種方法是使用來自 Data.Char 模組的 **digitToInt** 函式將字串中的每個字元轉換為其相應的數值。
所有這些函式都是標準庫的一部分,我們可以使用它們輕鬆地將字串轉換為 Haskell 中的整數。
演算法
**步驟 1** - 使用 read 函式定義 in-build() 函式。
**步驟 2** - 程式執行將從 main 函式開始。main() 函式控制整個程式。
**步驟 3** - 初始化一個名為“s”的變數。它將包含要轉換為整數的字串值。
**步驟 4** - 呼叫 in-build() 函式,並將字串作為引數傳遞給它。
**步驟 5** - 顯示最終轉換後的整數結果值。
使用 Read 函式
在這種方法中,stringToInt 在 read 函式下定義。然後呼叫此 stringToInt() 並將字串值作為引數傳遞給它。show 函式用於將整數轉換為字串,以便可以將其列印到控制檯。
示例
在這個例子中,我們將看到如何使用 read 函式將字串轉換為整數。read 函式將字串轉換為數字。
stringToInt :: String -> Int stringToInt s = read s main :: IO () main = do let s = "123" let result = stringToInt s putStrLn (show result)
輸出
123
使用 readMaybe 函式
在這個例子中,我們將看到如何使用來自 Text.Read 模組的 readMaybe 函式將字串轉換為整數。如果字串可以解析為所需的型別,它將返回解析後的值,否則返回 Nothing。show 函式用於將整數轉換為字串,以便可以將其列印到控制檯。
示例
import Text.Read (readMaybe) stringToInt :: String -> Maybe Int stringToInt s = readMaybe s main :: IO () main = do let s = "123" let result = stringToInt s putStrLn (show result)
輸出
Just 123
使用 digitToInt 函式
在這種方法中,函式 stringToInt 將字串作為引數,並使用模式匹配來檢查它是否與預定義值(“one”、“two”、“three”)之一匹配。如果它與這些值之一匹配,則它返回用 Just 建構函式包裝的相應整數。結果是原始字串的整數表示形式。如果輸入字串與任何預定義值都不匹配,則返回 Nothing。
示例
import Data.Maybe (fromMaybe) stringToInt :: String -> Maybe Int stringToInt s = case s of "one" -> Just 1 "two" -> Just 2 "three" -> Just 3 _ -> Nothing main = do let input = "two" let output = fromMaybe (error "Invalid input") (stringToInt input) print output
輸出
2
結論
在 Haskell 中,將字串轉換為整數的過程通常涉及使用來自 Text.Read 模組的 read 函式或 readMaybe 函式。
另一種方法是使用來自 Data.Char 模組的 digitToInt 函式將字串中的每個字元轉換為其相應的數值,然後將它們與 10 的冪列表組合並加起來以獲得原始字串的整數表示形式。
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP