Haskell程式:將字串傳遞給函式
本文將幫助我們學習如何在Haskell中使用恆等函式和lambda表示式將字串傳遞給函式。在第一個示例中,我們將使用(myFunction inputString = inputString)函式,在第二個示例中,我們將使用(myFunction = id)。在第三個示例中,我們將使用lambda表示式(myFunction = \inputString -> inputString)。
方法1:將字串傳遞給使用者定義的函式
在此方法中,定義了使用者定義的函式,其中包含函式定義和一些返回值,並透過將字串作為引數傳遞給它來呼叫。
演算法
步驟1 − 透過編寫其定義和返回值來定義使用者定義的函式。
步驟2 − 程式執行將從main函式開始。main()函式控制整個程式。它寫成main = do。在main函式中,透過將字串作為引數傳遞給它來呼叫使用者定義的函式。
步驟3 − 呼叫函式後,結果將列印到控制檯。
示例
在此示例中,定義了函式myFunction,它以字串作為輸入並將其作為輸出返回。然後,main函式使用引數“Hello, World!”呼叫myFunction,並將結果分配給變數result。最後,使用putStrLn函式將result的值(即“Hello, World!”)列印到控制檯。
myFunction :: String -> String myFunction inputString = inputString main = do let result = myFunction "Hello, World!" putStrLn result
輸出
Hello, World!
方法2:使用恆等函式將字串傳遞給使用者定義的函式
在此方法中,使用恆等函式定義使用者定義的函式,以儲存包含函式定義和一些返回值的字串,並透過將字串作為引數傳遞給它來呼叫。
演算法
步驟1 − 使用恆等函式透過編寫其定義和返回值來定義使用者定義的函式。
步驟2 − 程式執行將從main函式開始。main()函式控制整個程式。它寫成main = do。在main函式中,透過將字串作為引數傳遞給它來呼叫使用者定義的函式。
步驟3 − 呼叫函式後,結果將列印到控制檯。
示例
在此示例中,定義了一個函式“myFunction”,它以字串作為輸入並返回相同的字串作為輸出。“id”函式是恆等函式,它返回其引數而不做任何更改。“main”函式然後使用“myFunction”,將字串“Using Identity function!”作為引數傳遞,並將結果繫結到“result”變數。“putStrLn”函式然後用於將“result”的值列印到控制檯。
myFunction :: String -> String myFunction = id main = do let result = myFunction "Using Identity function!" putStrLn result
輸出
Using Identity function!
方法3:使用Lambda表示式將字串傳遞給使用者定義的函式
在此方法中,使用lambda表示式定義使用者定義的函式,其中包含函式定義和一些返回值,並透過將字串作為引數傳遞給它來呼叫。
演算法
步驟1 − 使用lambda表示式透過編寫其定義和返回值來定義使用者定義的函式。
步驟2 − 程式執行將從main函式開始。main()函式控制整個程式。它寫成main = do。在main函式中,透過將字串作為引數傳遞給它來呼叫使用者定義的函式。
步驟3 − 呼叫函式後,結果將列印到控制檯。
示例
在此示例中,使用lambda表示式定義了一個Haskell函式myFunction。lambda表示式\inputString -> inputString獲取引數inputString並將其返回而不做任何更改。“main”函式然後使用引數“Using Lambda Expression!”呼叫myFunction,並將結果分配給變數result。最後,使用putStrLn函式將result的值(即“Using Lambda Expression!”)列印到控制檯。
myFunction :: String -> String myFunction = \inputString -> inputString main = do let result = myFunction "Using Lambda Expression!" putStrLn result
輸出
Using Lambda Expression!
結論
在Haskell中,字串是一系列字元,表示為字元列表。可以使用雙引號(")定義字串。
使用者定義的函式是由程式設計師建立的用於執行特定操作的函式。使用者可以透過傳遞任何所需的引數並在函式定義中返回值來根據需要定義函式。傳遞的引數可以是整數、字串或任何值的陣列。
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP