Haskell程序 将字符串转换为整数

Haskell程序 将字符串转换为整数

本教程将帮助我们将字符串转换为整数。在Haskell中,将字符串转换为整数的过程通常需要使用Text.Read模块中的read函数或readMaybe函数。另一种方法是使用Data.Char模块中的digitToInt函数,将字符串中的每个字符转换为其相应的数字值。

所有这些函数都是标准库的一部分,我们可以用它们在Haskell中轻松地将字符串转换成整数。

算法

  • 第1步 – 使用read函数定义in-build()函数。

  • 第2步 – 程序的执行将从主函数开始。main()函数拥有对程序的全部控制权。

  • 第3步 – 一个名为 “s “的变量将被初始化。它将拥有将被转换为整数的字符串值。

  • 第4步 – in-build()函数被调用,字符串将被作为参数传递给它。

  • 第5步 – 显示最终转换后的整数值。

使用读取功能

在这种方法中,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接收一个字符串作为参数,并使用模式匹配来检查它是否与预定义的值(”一”、”二”、”三”)匹配。如果它与这些值中的一个相匹配,它将返回被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的幂的列表结合起来,加起来得到原始字符串的整数表示。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程